UI、ビジネスロジック、データベースなどのさまざまな層にコードを配布したいWebアプリケーションを構築しています。これが私の使用シナリオを説明する私の望ましい機能です:
- リアルタイムの高性能要求/応答タイプのアプリケーション
- UI、ビジネスロジック、データベースなどのさまざまなレイヤーに分割されるアプリケーション-各レイヤーはコンピューターのクラスターで動作します
- レイヤーは、他の相互作用するレイヤーに対して透過的であることが望ましいロードバランシングおよびフェイルオーバー機能をサポートする必要があります。
- 将来的にはさまざまな言語との相互運用性が追加の望ましい機能になります
- これらのレイヤーは、組織自体の内部に存在します。つまり、現時点では、外部の組織サービスとやり取りするつもりはありません。
RMIを試しましたが、欠点はJavaロックインであり、負荷分散とフェイルオーバー機能がサポートされていませんでした。私はJMSを検討しましたが、負荷分散、MOMのフェイルオーバーなどの機能は非常に魅力的ですが、リアルタイムの要求/応答タイプのアプリケーションには適していないようです(間違っていると思われる場合は訂正してください)。
このユースケースのシナリオに最適な、人気のある適切なフレームワークを提案してください。
更新:
SOAを調べてみると、SOAPとRESTの2つの著名なオプションに出くわしました。私が述べたように、アプリケーションのモジュール/レイヤー間で内部的に使用する通信方法を選択する必要があります。迅速な要求/応答と高いスケーラビリティ、負荷分散、フェイルオーバーのシナリオを探すときに、それらの間で行うべき明白で人気のある選択はありますか?この投稿をRESTとSOAPの議論に変換するつもりはありませんが、この場合、簡単なライト比較が役立つ場合があります。私が見逃しているSOAにそれがあれば、私は3番目の選択肢も受け入れます。実際の展開シナリオからのいくつかの例も役立ちます。