1

外部システム (他社) によって消費される Web サービス (Java、Spring) をゼロから設計および実装する最初の仕事/責任があります。この機会にわくわくしていますが、同時にこれが初めての試みなので、最善を尽くしたいと思っています... デザインを進化させる際に、次のことを考慮する必要があると確信しています: 1.スケーラビリティと最小限の遅延 2. SLA の順守 (エンド ツー エンドで 2 秒など) 3. さまざまなメディア タイプのサポート (SOAP、POX、JSON)

私たちは現在、契約を定義する段階にあり、そうしている間に、自分で処理できるアプリケーション レベルの詳細に加えて、インフラストラクチャの課題 (サーバー、スケーラビリティなど)。

過去の経験に基づいて回答するか、前進するのに役立つリソースを指摘していただければ、この点に関して何らかの助けが得られることを楽しみにしています.

PS :- セキュリティに関連する要因、wsdl でのポリシーの定義、およびその他のアプリケーション レベルの考慮事項については既に認識しています。私の主な関心事は、インフラストラクチャ レベルでの選択と決定です。

ありがとう!

4

1 に答える 1

2

新しい任務おめでとうございます!あなたにそのような大きな責任を与えるために、彼らはあなたのことをよく考えているに違いありません。

あなたの質問については、私は Web サービス API を従来の Web アプリケーションと同じように見ています。唯一の違いは、クライアントは人よりもコードである可能性が高いということです。したがって、Web サーバーの負荷分散、データベースでのインデックスとビューの構築、キャッシュなど、既に知っている Web アプリケーションのスケーラビリティの原則はすべて、ここでも同じように適用されます。これを別に考えてはいけません。同じように、JMeter または商用製品を使用したパフォーマンス テストが継続的インテグレーション インフラストラクチャの一部であることを確認してください。

さまざまなメディア タイプのサポートについては、正確にはわかりません。あなたがSpringに言及したので、SpringとSpring Web Servicesは、高速化するために必要なすべてをカバーしています。認証、承認、ロギング、監査、エラー処理など、対処する必要がある API レベルの事柄が多数あります。特定の質問に答えるためのリソースがたくさんあります。

私からも言えることは一つ。カップリングにご注意ください。あなたの WSDL と REST API は確実に大きく進化するでしょう。これらの変更がコード ベースの残りの部分に影響を与えないようにコーディングしてください。または、小さな変更の後ですべてを修正するために週末に多くの作業を行うことになります。

あなたのプロジェクトで頑張ってください!

于 2013-12-17T00:17:04.433 に答える