この質問は少し主観的なものになる可能性があると思うので、CWとしてマークします。
私のチームは、プロジェクトで使用する新しい「Webサービス」のセットを開発することに興味を持っています。「Webサービス」という用語は非常に多くの異なる意味を持つ可能性があるため、私は「Webサービス」を引用符で囲んでいます。本当に必要なのは、APIのセットをクロスプラットフォームのクライアントに公開して、データを消費し、それに対してアクションを実行できることだけです。
私は、データを他の多くの(内部)アプリケーションや他のサービスに公開するためのサービスを作成することに関して、現在の「最先端」が何であるかを理解するためにいくつかの調査を試みています。私はThrift、Protocol Buffers、JAX-WS、RMIなどを研究してきましたが、新しいサービスのセットを設計する際にどのようなアプローチを取るべきかを理解するまでは、ちょっと迷っています。基本的にサービスの「インフラストラクチャ」を作成できるようにしたいと考えています。そのため、現在のすべてのアプローチについて少し調査しています。
真新しいゼロからのWebサービスを構築するために、現在のベストプラクティス/最先端はどこにありますか?
私たちの唯一の実際の要件は次のとおりです。
- データフォーマット/エンコーディングはプラットフォームに依存しない必要があります(これによりRMIが除外されます)。
- サービスはHTTP上でうまく機能するはずです
- Javaで実際のサーバー側サービスを作成することは問題ではありません。
- クライアントプロキシを生成できることは素晴らしいプラスです。
- 各サービスを軽量にして、さまざまな機能のサービスを完全に別個のデプロイメントとしてデプロイできるようにしたいと思います。
現在、SOAPサービスとAxis / JAXRPCサービスの組み合わせを使用していますが、正直なところ、これらを処理するのは非常に困難です。送受信されるメッセージは巨大で、過度に冗長です。