タグ

memcachedに関するsendのブックマーク (10)

  • memcached活用は、格納オブジェクトの”粒度”がキモ

    最近じゃmemcachedを活用してデータベース(RDB)の負荷を下げるって話、そこらじゅうから聞こえてくるけれど、memcachedの活用は、格納オブジェクトの”粒度”(granularity)がキモだと思ってます。 memcachedは、KeyとDataをペアで格納して、Keyが与えられると、関連付けられたDataを返すだけのシンプルなシステム。PerlPHPの連想配列と同じ。このmemcachedをRDBのキャッシュとして活用してやる場合、memcachedに格納するキャッシュデータの単位、”粒度”をどう設計するかが重要になってくる。 RDBの場合、格納されるデータはRow(レコード)単位。じゃぁキャッシュもRow単位で作ってやればいいのかといえば、それではうまくいかないケースもたくさんある。RDBでは専用の問い合わせ言語であるSQLを使って、 SELECT * FROM hoge

    memcached活用は、格納オブジェクトの”粒度”がキモ
  • memcachedは何故libevではなくlibeventを使っているのか? - rants

    libev? 多くの人がlibevの方がlibeventより早いし安定していると言っているのを聞くし、 3倍速いことを示すベンチマークも見た。libevにする予定はある? という質問に対しての回答。 libevには半信半疑なんだ。pollerの指定をいろいろやる必要があるし、 graceful fallbackは複雑に見える。それに彼らはcronをリライトするのに一生懸命だ。 もし誰かパッチを書いてくれてベンチマークを走らせられるようなら、そのパッチとベンチマークを ポストしてくれれば議論できるよ。それが全然早いようなら、オプションかなにかで動くようにする。 でも僕はlibevにはlibeventスタイルのthreadサポートが欠けていると思ってる。 (ゲットーだけど動くからね)。 僕らには重要なことだ。 libev うまくいってるようには見えないよ。間違ってたら指摘して欲しい。

    memcachedは何故libevではなくlibeventを使っているのか? - rants
  • 第4回 memcachedの分散アルゴリズム | gihyo.jp

    株式会社ミクシィの長野です。第2回、第3回と前坂がmemcachedの内部について紹介しました。今回は内部構造から離れて、memcachedの分散についての紹介をいたします。 memcachedの分散 連載の1回目に紹介しましたが、memcachedは「分散」キャッシュサーバと言われていますが、サーバ側には「分散」の機能は備わっていません。サーバ側には当連載の第2回、第3回で前坂が紹介したメモリストレージの機能のみが組み込まれており、非常にシンプルな実装となっています。では、memcachedの分散はどのように実現しているのかと言うと、すべてクライアントライブラリによって実現されます。この分散方法はmemcachedの大きな特徴です。 memcachedの分散とは ここまで数度「分散」という言葉を用いてきましたが、あまり詳しく触れてきませんでした。ここでは各クライアントの実装に共通する大ま

    第4回 memcachedの分散アルゴリズム | gihyo.jp
  • php - memproxy - Google Code

    Code Archive Skip to content Google About Google Privacy Terms

  • MySQL Conf - Memcached Internals - igvita.com

    By Ilya Grigorik on April 22, 2008 Brian Aker and Alan Kasindorf gave a great talk on Memcached - every developer's favorite caching layer - at MySQL User Conference earlier last week. The slides are available online, and they're well worth a bookmark. Brian and Alan promised to continue updating the deck as they hone out their presentation at OSCON and other events. In fact, their next iteration

  • repcached - add data replication feature to memcached

    about repcached "repcached" is patch set which adds data replication feature to memcached 1.2.x. main purpose redundancy memcached system key features multi master replication. asynchronous data repliacation. support all memcached command (set, add, delete, incr/decr, flush_all, cas)

  • Repcached

    repcachedについて repcachedとは、memcachedにデータのレプリケーション機能を追加実装したものです。 memcachedは、以下のようなところによく使われると思います。 一時的なデータの保存場所として キャッシュを保存する場所として RDBMSのデータのキャッシュ 生成したページデータのキャッシュ いずれの場合も消えていいデータなので、万が一memcachedがダウンしても問題はないはずです。 しかし、影響が全くないわけではありません。 例えば、MySQLのデータをmemcachedでキャッシュしている場合、memcachedがダウンしている間は直接MySQLにアクセスがいくことになりDBサーバの負荷が上がります。また、memcachedを再起動してキャッシュが失われた場合は、再びキャッシュが溜まるまではDBサーバに負荷がかかることになってしまいます。 このように

  • repcached 1.0リリースの補足とちょっとしたHowTo : DSAS開発者の部屋

    前のエントリでrepcached 1.0のリリースをお知らせしました。 開発の動機はプロジェクトページにちょっと書いたのですが、たいせつなことをひとつ書き忘れていました。 repcachedを開発しようと思い立ったのは、ひとことでいうと「キャッシュサーバといっても止まらないようにしたい」、別ないい方をすると「サーバ管理者だって夜はぐっすり眠りたい」というものでした。 そしてふたりのエンジニアが自ら社内向けに企画・提案してrepcachedの設計・開発にとりかかり、プロダクション環境で使えるようなレベルのものができあがりました。 これがrepcachedを開発した動機です。 さて、昨日はrepcachedをみなさんに向けて公開しました。 いうまでもなく、repcachedを社内に閉じて外部には公開せずに使い続けるという選択肢もありました。 でもわたしたちはそうしませんでした。 わたしたちはい

    repcached 1.0リリースの補足とちょっとしたHowTo : DSAS開発者の部屋
  • akihitoの日記 - Javascriptでmemcachedにソケット通信する

    MOONGIFTで紹介されていたJNEXTを使うとブラウザからソケット通信をする事ができます。これを使ってmemcachedにソケット通信するモジュールを作ってみました。 10/9 ソースをcodereposに移しました add,replaceが使えるようになりました(使ってる人なんかいるのかね?)。 cache_memcached.js サンプルコード 使い方 サーバ側 memcachedを起動させるだけです。CGIやスクリプトを置く必要はありません。 memcached -d -m -l 192.168.0.10 -p 11211 -u root クライアント側 JNEXTをインストールします。 インストールが完了したら、auth.txtを編集してJNEXTが実行できるURLとライブラリを追記します。 MSIE → C:\Program Files\Optimistec\JNEXT\A

    akihitoの日記 - Javascriptでmemcachedにソケット通信する
  • Erlang で memcached を作ってみました。 : DSAS開発者の部屋

    先日、こちらの Erlang の世界ではmemcachedとか要らない を興味深く読ませて頂きました。 たしかにクライアント側も Erlang で書かれている場合、例えばキャッシュサー バーにアクセスを行う WEB アプリケーションも Erlang で書かれていれば Erlang のプロセス間通信を使用することで簡単にキャッシュサーバを実装する ことが出来そうです。しかし、WEB アプリケーションなど、全てのシステムを Erlang で書くにはまだ私にとって勇気が要る事なので TCP/IP で memcache プ ロトコルを喋る Erlang 版 memcached を作ってみました。 その名も ememcached です。 % ememcached.erl -module(ememcached). -export([start/0, ememcached/1, process_comm

    Erlang で memcached を作ってみました。 : DSAS開発者の部屋
  • 1