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つを実装しさえすれば、高速なサーバーを記述できることになる。
![memstoredの実装詳細 1000行に収まる高速サーバーについて - Blog by Sadayuki Furuhashi](https://cdn-ak-scissors.b.st-hatena.com/image/square/1496670734c9571df5228016518608a3c12f9509/height=288;version=1;width=512/http%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fv%2Fviver%2F20081014%2F20081014164733.png)