バイナリシリアライズ形式 MessagePack をプロトコルに利用したRPCライブラリ MessagePack-RPC の、C++版を開発しています。 以前に MessagePack-RPC for Ruby について 54行で実装する分散KVSや140行で作る分散リアルタイム検索エンジンを紹介しましたが、そのC++版です。 大まかな設計はRuby版と同じで、Ruby版と同じような使い勝手で利用できます。 しかしRuby版とは異なり、C++版では完全にマルチスレッドに対応しています。具体的には、マルチコア時代の高並列性IOアーキテクチャ Wavy を利用しています: 複数のスレッドでイベントループを共有しており、マルチスレッドでイベントハンドラを次々に処理していきます。 単純なイベント駆動I/Oと比べると、並列性が高いという利点があります。イベントハンドラの中で処理が多少ブロックしても、
![MessagePack-RPC for C++ テクニカルプレビュー - Blog by Sadayuki Furuhashi](https://cdn-ak-scissors.b.st-hatena.com/image/square/aeeca99ffcbdd77777f43b294a9cfaa00b994264/height=288;version=1;width=512/http%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fv%2Fviver%2F20091223%2F20091223080500.png)