非常に複雑な質問で申し訳ありませんが、これは私がしばらく研究してきたことであり、それは本当に私を苛立たせています。今日の時代には、100万のサービスがあり、サービスを実装する1つの方法はクロスプラットフォーム(SOAP)であり、簡単に構築できるように感じます(.NET、Java、およびその他のフレームワークのおかげです)。ただし、これらのテクノロジーは5〜10年間コミュニティに存在していますが、私たちは常に同じ問題に悩まされています(または少なくとも私はそうです)。
- 識別(追跡サービス)-UDDI; たとえば、サービスについて説明しているwikiと、サービスドキュメントを保持しているリポジトリにある同じドキュメントのPDFバージョンがあるにもかかわらず、今月3回、サービスがある場所を同僚に思い出させる必要がありました。 。
- スケーラビリティ-すぐに使用できるクラスタリング。組織として、私たちはサービスの利用を監視し、このサービスがより多くのRAM、より多くのCPU、より多くのインターフェースを必要とするかどうかのような決定を下すためだけに管理者に支払うことに多額のお金を費やしています。これをどのように負荷分散しますか?
- 監視-エラーログなど。1人の顧客にのみ影響するように見えるバグが発生している理由を確認するために、サービスのトレースを設定する必要がある回数を数えられません。または、例外をシリアル化し、例外をdbsに記録するために、ロジックをサービスにコーディングする必要があります。優雅に失敗するなど。
- 展開-簡単に展開できます。5つの負荷分散サーバーにDLLをデプロイするこの方法はありません
これらの問題のそれぞれは、組織によって実装されたある種のカスタムソリューションを必要とします。#1のドキュメントとUDDI。#2の仮想化と負荷分散のハードウェア/ソフトウェア。#3のトレース、データベース/ログへの例外の書き込みなど。#4のカスタム展開ソフトウェア。私は中規模の組織で働いています。Sun、Google、またはMicrosoftの規模の企業がこれらのジレンマにどのように取り組むか想像さえできません。
私のビジョンは非現実的かもしれませんが、上記のすべてを管理するサーバークラスターの上にフレームワーク自体が存在することを夢見ています。BizTalkの機能の一部をWCFサービスの実装者(キャッシュ、ホスティング、監視など)に拡張しているように見えるため、MicrosoftのAppFabricについて読むことに夢中になりました。しかし、私が見たところ、それが生きているとは感じていません。開発者と組織が、クラスター間で簡単に拡張でき、クラスターに簡単に展開でき、識別可能で、場合によってはバージョン管理可能なサービスを作成するのに役立つオールインワンソリューションを夢見ています。
ですから、この投稿が私の夢についてのものであるという意味ではありません。実際に質問があります。手始めに、私の夢/完全に非現実的なものが欲しいですか?さらに、サービスを開発するための新しいより独自の方法(BizTalk)に制限されることなく、これらの問題を解決しようとするソリューションはありますか?最後に、完全なSOA / ESBソリューションに関して、現在または将来の市場で最も可能性のあるものはどこにあると思いますか?