berryMQ作業メモ 9/27版
http://bitbucket.org/shibu/berrymq/
http://berrymq.shibu.jp/
プロセス間通信の実装メモ
- JSON-RPCをバックエンドに利用
- Connectionクラスを作って、そいつがJSON-RPCの次に低レベルな部分を担当
- Connectionクラスは基底クラスと、Style02のプロセス間通信のクライアント/サーバ
- ConnectionQueueクラスはStyle03のプロセス間通信のサーバ側
- ConnectionQueueClientクラスはStyle03のプロセス間通信のクライアント側
- ConnectionInteractiveクラスは、Style01のプロセス間通信のクライアント/サーバ
- JSON-RPCに公開するのは、ExportedFunctionクラスのオブジェクト
- こいつはフォワードするだけで、中身はほぼ空。矢面に立つクラスは仕事しない方がいいと思われるので。主にセキュリティ的な意味で。
- 仕事するのはConnectionPointクラス
- 他のノードとのコネクション情報などを管理する。
- berryMQのローカル通信で来たメッセージを外部に中継する
- 外部から来たメッセージをローカルに中継する。また、他のノードにも中継する
ネットワークのプログラムの開発手順はいつも悩む。今回はJSON-RPCの直接アクセス部分と、高水準なAPIの2段階に分けて行った。今回はやらなかったけど、JSON-RPCやXML-RPCであれば、Excelか何かに応答手順を書いておいて、クライアント、サーバの両方のモックを用意してテストする、というのもできるかもしれない。以前はMockSocketなんぞを作ってみたけど、あまり低水準すぎてもテストはしにくいので。