1000行はテキトーなハッタリだが良くあること ;-) memstored の本体は memstored.cc ファイル1つに収まっており、その行数は600行程度しかない。memstored のポイントは、少ない行数で高速なサーバーをカンタンに書けたことであった。memstored の実装について詳しく紹介してみる。 memstoredのソースコード http://svn.coderepos.org/share/lang/c/memstored/trunk/memstored.cc ソースコードを読むと、処理のほとんどはmp::iothreadsに任せているが、 プロトコルのストリームパーサ 読み込み用のバッファリング メインロジック の3つは、mp::iothreads とはほぼ完全に分離していることが分かる。逆に言えば、この3つを実装しさえすれば、高速なサーバーを記述できることになる。