Movatterモバイル変換


[0]ホーム

URL:


BLOGTIMES

cles::blog

平常心是道
« :: »
2006/12/17

memcachedを導入

  memcached 
このエントリーをはてなブックマークに追加

かなり乗り遅れちゃってるんですが、いまさらならがmemcachedを導入してみました。実績を見るとはてなや、mixiなどの結構大規模なウェブサイトにも導入されているようなのでそこそこのスケーラビリティはありそうです*1

memcachedというのはその名のとおりメモリを使ったキャッシュサーバーで、ディスクへの書き込み機能を持たず、テーブルが1つしかないDBのようなものです。データはメモリ上にしか保存されないので、高速に動作しますが、デーモン自体を再起動すると保存していたデータは消去されてしまいます。大概のウェブアプリケーションにおけるトランザクションは更新系よりも参照系の方が圧倒的に多いので、ライトスルーキャッシュのような使い方でも十分に性能の向上が見込めると思います*2

memcached以前

これまでPHPのメモリキャッシュにはXCacheeAcceleratorの機能を使っていたんですが、これらはmod_phpに組み込まれて動くものなのでウェブサーバーを再起動するたびにキャッシュが空になってしまうのが非常に気になっていましたが、こちらはキャッシュデーモンを再起動しない限りキャッシュは常に温まっている状態(warm cache)にあるので心置きなくApacheの再起動ができるようになります。

導入方法

導入は簡単で、ほとんど設定の必要ありません。
またデーモンの設定はすべてコマンドラインオプションで行います。

1.libeventのインストール

# yum install libevent

2. memcachedのインストール

# ./configure# make# make install

3. memcachedの起動

# ./memcached -d -m 64-l 127.0.0.1 -p 11211

4. phpへのモジュール組み込み

peclでのインストール後、memcache.soをextensionとして読み込むようにphp.iniを編集

# pecl install memcache

5. phpからの接続テスト

Apacheを再起動後、下記の内容のファイルを作って起動してみる。エラーが表示されなければOK。

<?php$memcache = new Memcache;$memcache->connect('127.0.0.1', 11211) or die ("Could not connect");?>

導入後

さっそくNucleusのコア*3にちょっと手を入れてみたいのですがいい感じで動いています。

時間がないのでちゃんとしたベンチを取っていないのですが、通信のオーバーヘッドが若干あるためなのかXCacheeAcceleratorよりは数十ミリ秒ほど遅くなっているようですがぜんぜん許容範囲内です。

運用の工夫

cactiを使ってmemcachedの稼動統計を取ってみました。
 →cactiでmemcachedを監視する
 →続・cactiでmemcachedを監視する

PHPで動く、memcachedの内容をダンプするスクリプトを書いてみました。
 →memcachedの内容を確認するには

  • *1: もちろんそれなりにパラメータのチューニングは必要なのでしょうが。
  • *2: というか、にわか仕込みの僕の腕ではそれくらいのキャッシュマネジメントしかできません。
  • *3: 手を入れたのはglobalfunctions.php、SKIN.php、TEMPLATE.php、PLUGIN.phpの4つ

byhsur at 17:13[2年前][1年前][1年後][3年後][4年後][5年後] |
こんな記事もあります 「再起動 ウェブアプリケーション キャッシュ
Google が検索結果からキャッシュへのリンクを削除
firewalld + ipset で IP ブラックリスト(+ホワイトリストも)設定(改)
給与のデジタル払い?
PR-500KI と Grandstream の電話機の相性問題は Asterisk で解決できる
Yahoo! BB ADSL にサヨナラを
Ruffle で昔の .swf を再生する
Python で一定時間経つと内容が勝手に消えるハッシュ
ConnectX-3 を ESXi 7.0 で使う
見慣れない払い戻しは VISA のサマーキャンペーン
systemd から起動されているサービスを定期的に再起動する
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/1767
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form

コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。

OpenID を使ってログインすることができます。

Identity URL:Yahoo! JAPAN IDでログイン

« :: »
Copyright © 2004-2023 by CLES All Rights Reserved.
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 .アーロンチェアのポスチャーフィットを修理(99669)
2 .年次の人間ドックへ(99084)
3 .福岡銀がデマの投稿者への刑事告訴を検討中(99073)
4 .三菱鉛筆がラミーを買収(98682)
5 .2023 年分の確定申告完了!(1つめ)(98651)
最新のエントリ
cles::blogについて
誰が書いてる?
最近行った場所
サイトポリシー
タグ一覧
検索ワードランキング

Referrers

    Powered by CLES
    Nucleus CMS v3.31SP3/w memcached
    21375056(W:5681 Y:1545 T:0875)
    cles::blogのはてなブックマーク数
    benchmark


    [8]ページ先頭

    ©2009-2025 Movatter.jp