1

あるサーバーで API を実行し、別のサーバーでアプリケーションを実行する Ruby on Rails 2.3.10 アプリケーションがあります。アプリ、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 を開いています。ローカル マシンとサーバーからそのサーバーに telnet で接続することもできます。

これを使用するとすべてが正常に動作します

config.cache_store = :mem_cache_store

memcached がローカルホストで実行されている限り。

Rails 2.3 をサポートする Dalli gem の最新バージョンを使用してこれを試したところ、同じエラーが発生しました。

何か案は?どこでも検索しましたが、正しく構成されているように見えますが、明らかに何かが間違っています。

4

0 に答える 0