LoginSignup
16
18

More than 5 years have passed since last update.

memcached入門 その1

Last updated at Posted at 2016-01-19

memcachedとは何か

オープンソースのメモリオブジェクトキャッシュシステム。

デフォルトだとキャッシュの保存先はDBやファイルになっていることが多いが、memcachedを使うとサーバーとしてキャッシュを管理することが出来、かつ複数台運用も出来るため、スケールするサービスの場合は便利。

例えば、Facebookの場合は高速化のため数千台のmemcachedサーバーを運用しているらしい。

memcacheとmemcachedがあるが、違いについては以下の記事が詳しい。簡単に言うとmemcachedの方が新しくPHPに対応しておりパフォーマンスが高い。

ケーワン・エンタープライズのエンジニアメモ(`・ω・´)ゞビシッ!!: memcacheとmemcachedの違い http://k-1-ne-jp.blogspot.jp/2013/01/memcachememcachedlibmemcached.html

memcached自体をWebサービスとして提供している事業者もあり、AWSのElasticacheやHerokuのアドオン等。

サービスとしてmemcachedを使うメリット

アプリケーションのホスト先として、自社サーバーではなくHerokuなどのSaaSを利用した場合、

AWS EC2などに用意したMemcachedサーバーを使用する事もできるが、管理コスト(死活監視、バックアップなど)を考えると、Herokuに用意されているアドオンを利用する方がメリットが大きい。

メリット

  • キャッシュ専用サーバーとしてmemcachedを複数台運用することでスケールが出来る
  • オープンソースで簡単に始められる
  • ネット上にドキュメントが多い

デメリット

  • キャッシュのアクセスにネットワークで接続するため遅延が発生する(1台運用でローカルにインストールしてる場合は除く)
  • 分散運用するためキャッシュの削除や更新などの管理が難しい

参考記事

WordPressの最速キャッシュを探せ!APC、memcached、Transients APIを比較 | OXY NOTES http://oxynotes.com/?p=9278
ケーワン・エンタープライズのエンジニアメモ(`・ω・´)ゞビシッ!!: memcacheとmemcachedの違い http://k-1-ne-jp.blogspot.jp/2013/01/memcachememcachedlibmemcached.html
Heroku上に構築するWebアプリケーションは「Memcached」でサーバサイドセッションを管理する (1/2):CodeZine(コードジン) http://codezine.jp/article/detail/8345
Railsのマスタ的なModelのキャッシュについて[Redis] - 酒と泪とRubyとRailsと http://morizyun.github.io/blog/model-master-cache-rails-redis/

16
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
18