タグ

jsonとrpcに関するstarsky5のブックマーク (3)

  • JSON-RPC, RESTful API とクエリパラメータ - 日向夏特殊応援部隊

    OpenSocial の JSON-RPC, RESTful API の設計についてのよもやま話です。 JSON-RPC とクエリパラメータ OpenSocial Core API Server Specification 1.1 に URL Addression と言うセクションがあります。 これは JSON-RPC を http GET で呼び出す際に params の部分など構造化されたデータをどうやって渡すのって際の仕様になります。 JSON Object URL Parameter { "field" : "value" } field=value { "field" : [1,2,3,4,5]} field=1,2,3,4,5 { "field" : "12" } field='12' { "field" : [identifier,anotheridentifier]} fi

    JSON-RPC, RESTful API とクエリパラメータ - 日向夏特殊応援部隊
  • MessagePack RPC プロトコル - Blog by Sadayuki Furuhashi

    ※2010-04-06追記:ここの内容は大体あっていますがもう古いです。MessagePack-RPCプロトコル仕様(ドラフト)と実装例 を参照してください。 名前は(仮)です。 現在クラスタ通信フレームワーク ccf というものを開発中で*1、MessagePack を使ったRPCプロトコルを使っています。プロトコルの仕様は JSON-RPC を元に MessagePack 用により高速性を重視したもので、とてもシンプルです。 1つの通信路(TCPコネクションなど)でRPCの遅延リターンができるように、メッセージにはシーケンス番号が入っています。応答を2回以上返してしまっても片方を無視できたり、RPC応答をRPC要求とは異なる通信路で返すことができるという利点もあります。 RPC要求 RPC要求は次の4つの要素からなる配列 [type, msgid, method, params] です

    MessagePack RPC プロトコル - Blog by Sadayuki Furuhashi
  • バイナリシリアライズ形式「MessagePack」 - Blog by Sadayuki Furuhashi

    Googleが公開したバイナリエンコード手法であるProtocol Buffersは、クライアントとサーバーの両方でシリアライズ形式を取り決めておき(IDL)、双方がそれに従ってデータをやりとりするようにします。 この方法では高速なデータのやりとりができる反面、IDLを書かなければならない、仕様を変えるたびにIDLを書き直さなければならない(あらかじめしっかりとIDLを設計しておかないとプログラミングを始められない)という面倒さがあります。 ※追記:Protocol BuffersのデシリアライザはIDLに記述されていないデータが来ても無視するので(Updating A Message Type - Protocol Buffers Language Guide)、仕様を拡張していっても問題ないようです。 一方JSONやYAMLなどのシリアライズ形式では、何も考えずにシリアライズしたデータ

    バイナリシリアライズ形式「MessagePack」 - Blog by Sadayuki Furuhashi
  • 1