memcache-topはPerl製のmemcachedインスタンスのステータス可視化ソフトウェアです。 Webサイトの高速化においてmemcahedは外せない選択肢になります。複数のmemcahedインスタンスを立ち上げている規模になったら使ってみたいのがmemcache-topです。 実行中です。一つしかないとちょっと微妙ですが…。 memcache-topはPerlスクリプトであり、ダウンロードしたらすぐに実行するだけで使えます。利用量、ヒット率、コネクション、読み込み、書き込みなどのステータスが一目で分かるようになっています。キーの一覧などは分からず、インスタンスごとのサマリーが分かる形になります。 memcache-topはPerl製のオープンソース・ソフトウェア(New BSD License)になります。 MOONGIFTはこう見る Webアクセスを高速化する最も簡単な方法は
はじめに アクセスが急増すると、応答時間が著しく悪化するサイトはありませんか? 普段は200ミリ秒以内で安定してアクセスをさばいているのに、イベントやらキャンペーンやらを開始した瞬間から、普段の2倍や3倍のアクセスが殺到し、その結果、レスポンスタイムが3秒とか9秒とかかかるようになってしまうことってありますよね。 あるサイトの実状 つい先日まで、そんなサイトが私の目の前にもありました。自社で運営している某ソーシャル系のサイトなんですが、イベント開始時刻と同時にアクセス数が急増するのです。とはいえ、所詮は普段の2倍とか3倍程度の数なのだから、少なくとも1秒以内にレスポンスを返せるくらいの性能は維持したいものです。 しかし実際は困ったことに、応答に3秒以上もかかってしまう処理が大量に発生してしまう状況に陥ってしまっていました。これはきっと、どこかにボトルネックがあるに違いありません。 仮説を立
PHP用の拡張ライブラリを提供するPECL(The PHP Extension Community Library)で、ソーシャルニュースサイト「digg」によるmemcachedモジュールが、1月29日に公開された。バージョンは0.1.0。libmemcachedクライアントライブラリのラッパーとして実装され、mgetなどをサポートしている。 diggリードアーキテクトのJoe Stumpが公式ブログで明らかにしたところによると、既存の低機能でバグのあるPECLモジュールに代わるクライアントとして、次のような機能を有する。 コミュニティ標準のライブラリlibmemcachedで構築(PythonやRubyと同様に) CAS機能をサポート マルチgetをサポート リードスルー(read-through)キャッシュとvalueコールバック バイナリプロトコルをサポート バッファ書き込み ちょ
めんどくさがりなので、全てyumで取得。 yum install memcached yum install php-pecl-memcache php.iniに設定追加 extension=memcache.so Memcached起動 /etc/init.d/memcached start Apache再起動 /etc/init.d/httpd restart CakePHPのapp/config/core.phpにあるキャッシュ設定を変更 <?php /** * * Cache Engine Configuration * Default settings provided below * * File storage engine. * * Cache::config('default', array( * 'engine' => 'File' //[required] * 'du
repcachedについて repcachedとは、memcachedにデータのレプリケーション機能を追加実装したものです。 memcachedは、以下のようなところによく使われると思います。 一時的なデータの保存場所として キャッシュを保存する場所として RDBMSのデータのキャッシュ 生成したページデータのキャッシュ いずれの場合も消えていいデータなので、万が一memcachedがダウンしても問題はないはずです。 しかし、影響が全くないわけではありません。 例えば、MySQLのデータをmemcachedでキャッシュしている場合、memcachedがダウンしている間は直接MySQLにアクセスがいくことになりDBサーバの負荷が上がります。また、memcachedを再起動してキャッシュが失われた場合は、再びキャッシュが溜まるまではDBサーバに負荷がかかることになってしまいます。 このように
Photo by masuidrive76 Railsで高速化するためには、Memcachedによるキャッシュが欠かせないですが、もしmemcachedが落ちてしまうと、サービス全体でエラーが発生してしまうのが、気になるところでした。 Takiuchiさんと話をしていて、fiveruns-memcache-clientを使うことで、memcachedを再起動さえすれば自動で再接続されることはわかったのですが、やはりmemcachedが落ちている時はエラーになってしまうのが問題でした。 どうせ、キャッシュはキャッシュなのだから、memcachedが落ちている間はキャッシュを使わない様にするパッチをmemcache-clientに組み込もうと思って作業をしていたら、実はcache_fuにその機能があるのを発見しました。 config/memcached.ymlで、「raise_errors:
3月末にリリースされたバージョン2.1.1(すぐに2.1.2がリリース)から、実験的ですがsession storageとしてのサポートがされていますが、具体的な使い方はまだドキュメント化されてないようです(知っていたら教えて下さい :-))。 で、色々試してみたり(PHP5.2.1上)、memcacheのソースを眺めてみたところ、 extension=memcache.so session.save_handler = memcache session.save_path = "memcachedserver:11211"という具合に session.save_handlerに「memcache」と指定 session.save_pathにmemcachedの動作しているホスト名とListenポートをコロン「:」区切りで指定 とすれば良いようです(とりあえず動作する、ということです)。
一昨日から今日まで3日間の日程で開催されていた、MySQL Conference & Expo 2007に行ってきました。日帰り圏内どころか、自転車圏内で、こういうカンファレンスがあるのは、素晴しいです。 詳細は、随時アップされるであろうプレゼン資料と、Planet MySQLに大量の報告があります(全部英語ですけど)。 個人的に注目していたのは、Digg.com、Flickr.comとYoutube.comのDB周りアーキテクチャのセッションでした。あとは、http://www.mysqlperformaceblog.com/の人のセッションは、細かいTipsが多く、具体的にだいぶ役に立ちそうです。 というわけで、簡単に注目したセッションの内容を紹介してみます。ちなみに、内容の正確さは無保証です:P 気が向けば、もっといろいろ考察してみるかもしれません。 Technology at Di
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く