2011-06-09 60 views
3

我最近已經將我的代碼從Rails 2.3.4遷移到rails 3,並開始使用它的乘客。我也使用memcached gem,我隨機看到Memcached :: ClientError和Memcached :: ServerIsMarkedDead。我讀過這篇文章,其中說乘客智能產卵與基於memcache套接字的連接有關。所以我試圖在他們的網站提供修復memcached gem問題與乘客得到memcachedclientError

CACHE = MemCache.new memcache_options 
CACHE.servers = '127.0.0.1:11211' 
begin 
    PhusionPassenger.on_event(:starting_worker_process) do |forked| 
    if forked 
     # We're in smart spawning mode, so... 
     # Close duplicated memcached connections - they will open themselves 
     CACHE.reset 
    end 
    end 
# In case you're not running under Passenger (i.e. devmode with mongrel) 
rescue NameError => error 
end 

但我仍然得到相同的錯誤。它與memcached庫有關

回答

1

我在Ubuntu上使用memcached運行Rails 3.1.3應用程序,我使用Dalli gem來連接它,到目前爲止沒有一個小故障。你可能想看看。 Dalli Gem on GitHub