サーバーを実行中に追加できるmemcachedプロキシ(の未完成コード)

サーバー一覧を実行中でも変更できるmemcachedのプロキシサーバーを作ってみました。
相当にコンセプトだけです…とりあえず get (とget_multi) と set と delete はプロキシできます。
クライアントを待ち受けるコードは memcachedプロトコルのストリームパーサmp::wavy あたりを使っています。サーバーに接続するコードは libmemcached です。


コードはgithubにあります:http://github.com/frsyuki/memxy/tree

使い方

# githubからclone
$ git clone git://github.com/frsyuki/memxy.git
$ cd memxy

# コンパイル
$ ./bootstrap
$ ./configure && make && sudo make install

# localhost:3000 でクライアントを待ち受ける
$ memxy -t 3000 -d memxy.pid -o memxy.log

# memcachedサーバーの一覧を設定する
$ memxyctl localhost server1.host server2.host server3.host

コンパイルするには Ragelruby と g++ >= 4.1 が必要です。