我有一个 Ruby on Rails 2.3.10 应用程序,它的 API 运行在一台服务器上,应用程序运行在另一台服务器上。由于应用程序、API 和典型用户流程的性质;我需要集中我们的缓存。目前,我在每台服务器(Ubuntu 10.04.1 LTS)上运行了 memcached(1.4.2)。
当我尝试迁移到集中式 memcached 服务器时,我在生产和开发中始终遇到此错误:
Read error: #<RuntimeError: #<ActionController::Session::MemCacheStore:0x108cb5dc8> unable to find server during initialization.
我的 development.rb 和 production.rb 配置如下所示:
config.cache_store = :mem_cache_store, 'XX.XX.XX.XXX:11211'
我已经配置了我的 iptables 并打开了端口 11211。然后我还可以从我的本地计算机和服务器远程登录到该服务器。
使用它一切运行良好
config.cache_store = :mem_cache_store
只要 memcached 在 localhost 上运行。
我也尝试过使用支持 Rails 2.3 的最新版本的 Dalli gem 并得到相同的错误。
有任何想法吗?我到处搜索,看起来我配置正确,但显然这里有问题。