我有一個Rails應用程序,我想連接到Redis數據結構服務器。我想知道我應該如何繼續。我使用位於config/initializers/redis.rb
的全局變量$redis
在整個應用程序中進行查詢。如何正確使用/插入Redis的Rails?
我相信這種方法不適用於具有80多個併發連接的應用程序,因爲它使用一個全局變量來處理Redis連接。
我該怎麼做才能解決這個問題?我錯過了關於Rails內部的東西嗎?
教程中,我下面 http://jimneath.org/2011/03/24/using-redis-with-ruby-on-rails.html
謝謝你的回答,我能夠做一些研究並最終使用獨角獸。儘管現在我與Unicorn有內存問題,但我知道Ruby不會將內存釋放回操作系統,而是重新使用它,這對我來說是個大問題,因爲每個叉Unicorn都會創建內存,因此消耗的內存與父級處理。上次我檢查了我的應用程序的一個進程消耗+ 90mb,將該數乘以進程分叉的數量,併成爲相當大的內存,同時,我在每次fork之後執行'GC.start'。 – yeyo
@Kira你使用Ruby 2嗎?如果不是[你應該(參見關於寫複製的部分)](http://patshaughnessy.net/2012/3/23/why-you-should-be-excited-about-garbage-collection-in-ruby -2-0),我認爲分叉後GC.start並不是很有用,但[獨角獸的帶外GC](http://blog.newrelic.com/2013/05/28/unicorn-rawk- kick-gc-out-of-the-band /)可能是。 –
是的,我使用Ruby 2的原因與你說的相同,牛。雖然我並不知道「帶外GC」,並且「GC.start」可能不是個好主意,這是你提供的一個美妙的鏈接。非常感謝,2個叫混亂。 – yeyo