Web+DB press Vol.50にkey-valueストアの記事を書きました!
いまさらながら告知ですが、WEB+DB press Vol.50にて、key-valueストア入門という記事を執筆させていただきました。やっほーい!皆さんも、Software Design 2009年5月号が売り切れたくらいのイキオイで、100冊くらい買うといいと思います。
- 作者: 杉山貴章,羽生章洋,川口耕介,青木靖,鶴岡直也,長野雅広,森田創,伊藤直也,武者晶紀,ミック,高林哲,栗原傑享,米林正明,小飼弾,角田直行,橋本正徳,はまちや2,久末隆裕,Junio C Hamano,グニャラくん,やまだあきら,WEB+DB PRESS編集部
- 出版社/メーカー: 技術評論社
- 発売日: 2009/04/24
- メディア: 大型本
- 購入: 24人 クリック: 235回
- この商品を含むブログ (95件) を見る
ま、執筆中は毎日「死にたい、あー死にたい」とつぶやいていたので、日本語やらコードやらが怪しい部分なども多いと思います。第1章で書きたいことが書けたので満足しています。決して、「WEB+DB press Vol.50ではGit特集がよかったです!」というBlogを発見しては伏目がちになる毎日を暮らしていませんよ…
さて、上記記事でも紹介したgroongaですが、memcachedのバイナリプロトコルをほとんど実装してみました。casも実装してみたのですが、もともとのmemcachedのcasがいい加減な実装なので、あまり実用性ない気がしています。むしろcasは削除したい気が満々です。
memcachedのバイナリプロトコルを実装してみて分かったのですが、libmemcachedには初期値付きのincr/decrを行う関数が無かったんです…というわけで、libmemcachedに初期値付きincr/decrを実現するmemcached_increment_with_initial/memcached_decrement_with_initialという関数を追加してみました。
現在リリースされているlibmemcached 0.29では、
上記関数にてバイナリプロトコルを用いた初期値付のincr/decrが出来るようになっています。
ぜひgroongaと併せて試してみてください。