2013年12月11日

WEBサービス 比較選択

もし検索とかで引っかかって
比較表とか期待している人にはまずごめんなさいと言っておこう。

今回システムかんのメッセージのやり取りと言うか、
RPC(Remote Procedure Call)に何を使おうかなーって
色々と検討してみた。

自分の中での結論としては
Restful + 電文はjson 
にすることとした。

まず参考にさせていただいたサイト
Protocol Buffer、Thrift、Avro、MessagePack for Javaのパフォーマンス測定

Thrift vs Protocol Buffers vs Avro - Biased Comparison

上記のサイトから本当は速度的にはAvroが早いのだろうが、
ちょっと試してる時間がすぐに取れそうにない状況だったので、
手頃にできそうなRestfulにしてみるのがいいかということにした。

SOAPのようにがちがちのXML仕様ではなく、
内容をjsonにすればシリアライズ速度もかからないだろう。
#SOAPとRestfulじゃ想定される使用ケースも違う知って言う記事も見た。
#SOAPは認証とか、UDDI考えられている仕組みがだいぶ重厚。

JavaでRestfulをやる場合は、
フレームワークはjersyかspringframeworkかにはなるのだろう。

本当はもっと広く考えて
ESBと呼ばれるようなものとの組み合わせまで検討しようかとも思ったが、
そこまで手を出すのは止めておいた。

あきらめた一番の要因としては検証している時間がとれないことだ。
システム全体のアーキテクチャとして取り組むのであれば
検討してみるべきだと思うが、
サブシステム間だけの検討なので、
とりあえずESBには手を出さないこととした。

ざーっと見てみた中では使えそうなフレームワークは
Spring IntegrationかMuleかというところかと。
これらのフレームワークはEnterprise Integration Patternを取り入れているとのこと。
#昔の会社の人が持ってた本だが見ておけば良かったか・・。

自分であれこれ考えてAPI周りの仕組みを考えて作るよりは、
多分色々と考えられているんだろうが、
学習コストもとれないのであきらめた。


posted by rousi at 00:18| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。