タグ

rubyとmessagepackに関するpalm3rのブックマーク (2)

  • 第101回カーネル読書会 - Blog by Sadayuki Furuhashi

    先日楽天タワーで開催された第101回カーネル読書会で、分散KVS kumofs の設計と実装に関して発表しました。 少々準備不足で十分な発表ができたか不安ではありますが、懇親会で大いに議論が盛り上がったのは良かったです。 そんなわけで、発表資料を公開しました。 kumofsの実装(PDF) クリックで進むムービー版 Keynoteファイル デモ用コード デモ用のコードをいくつか用意していたので、ここに掲載します。 エラー処理などなどはテキトーですが、とりあえず動きます。 MessagePackシリアライズ(C++) kumofsで利用しているシリアライズライブラリMessagePackを使って、オブジェクトをシリアライズするコードです。 シリアライズした結果は標準出力(ファイルディスクリプタ1番)に書き出します。 #include <msgpack.hpp> #include <unist

    第101回カーネル読書会 - Blog by Sadayuki Furuhashi
  • Ruby Rev + MessagePack による分散プログラム - Blog by Sadayuki Furuhashi

    ネットワークプログラミングで面倒なのが、通信相手にバイト列しか送れないためプロトコルをシリアライズ方法から考えないといけないかったり、複数のクライアントに対応しようとするとスレッドやらイベント駆動やらを考えないといけないところで、なかなか質的なロジックの実装に手を付けられずもどかしくなります。 そのあたりの面倒な部分をまとめて良きに計らってくれるRPCライブラリを作っておくと良さそうです。 とはいえ、RPCレイヤーはネットワークプログラミングの中でも速度と信頼性に大きく影響する部分でもあります。実装を丸々隠蔽されてしまうと、後になってカスタマイズできずに困ったことになるかもしれません。 最初のプロトタイピングとして簡単に使えるが、カスタマイズも効くような柔軟性が欲しいところです。 そこでRubyの高速なイベント駆動IOライブラリであるRevと、バイナリベースのシリアライズ形式であるMes

    Ruby Rev + MessagePack による分散プログラム - Blog by Sadayuki Furuhashi
  • 1