- 2008-08-05 (Tue) 22:33
- Ruby on Rails
Photo by masuidrive76
Railsで高速化するためには、Memcachedによるキャッシュが欠かせないですが、もしmemcachedが落ちてしまうと、サービス全体でエラーが発生してしまうのが、気になるところでした。
Takiuchiさんと話をしていて、fiveruns-memcache-clientを使うことで、memcachedを再起動さえすれば自動で再接続されることはわかったのですが、やはりmemcachedが落ちている時はエラーになってしまうのが問題でした。
どうせ、キャッシュはキャッシュなのだから、memcachedが落ちている間はキャッシュを使わない様にするパッチをmemcache-clientに組み込もうと思って作業をしていたら、実はcache_fuにその機能があるのを発見しました。
config/memcached.ymlで、「raise_errors: false」を指定するだけで、memcachedでエラーが起こった場合には、キャッシュを無視するようになるようです。
ちょっと気になるのは、memcachedが落ちたのではなく、ネットワークなどの障害で一時的に接続されなかった場合、キャッシュの不整合が起こることです。これは、自動再接続したときにflush_allするなどのパッチを別に作る必要があるかもしれません。
Related posts
- Newer: EventMachineを使ったクローラの書き方の足がかり
- Older: iPhoneが起動不能になった場合の復活方法
Comments:2
- ogijun 08-08-06 (Wed) 0:37
-
ちょwww画像wwwwww
- masuidrive 08-08-06 (Wed) 8:58
-
ときどき見る光景だよねw
Trackbacks:2
- Trackback URL for this entry
- http://blog.masuidrive.jp/index.php/2008/08/05/stop_to_raise_errors_using_memcache-client/trackback/
- Listed below are links to weblogs that reference
- RailsでMemcachedが落ちていてもエラーにならない方法 from masuidrive on rails
- pingback from 次なるもの » Blog Archive » RailsでMemcachedが落ちていてもエラーにならない方法 08-08-06 (Wed) 9:00
-
[...] original article [...]
- pingback from Recent Links Tagged With "memcached" - JabberTags 08-08-26 (Tue) 11:00
-
[...] public links >> memcached RailsでMemcachedが落ちていてもエラーにならない方法 Saved by FreshOutlook on Mon 25-8-2008 5 Methods to Enhancing Page Load Saved by awa1 on Wed [...]