1

自己記述型/自動記述型のサービスは、SOA アーキテクチャの優れた点だと考えています。これは、(ほとんど) サービスを呼び出すために知っていることはすべてサービス コントラクト (WSDL など) に含まれているためです。

私にとって自己記述的ではないサービスのサンプルは、Facebook クエリ言語 (FQL http://wiki.developers.facebook.com/index.php/FQL )、または 1 つの文字列パラメーターで XML フローを交換して解析する Web サービスです。 XML と処理の実行。

技術的には、呼び出し元に技術的な影響を与えることなく実装を切り替えることができ、実装/バージョン間の互換性をビジネスレベルで処理できるため、最後のものはさらに技術的に分離されているように見えます。一方、強力なインターフェイスがない (サービスとそのバージョンに希薄化されている) と、サービスが既存の実装に密接に結合されます (サービスを交換し、完全な互換性を確保することがより困難になります)。

この質問は、SOA アーキテクチャで疎結合を実装する方法に関連しています

では、自己記述/自動記述サービスは、SOA アーキテクチャーで疎結合または密結合ですか? ESB に関する影響は何ですか?

任意のポインタをいただければ幸いです。

4

1 に答える 1

1

問題は、疎結合された SOA サービスは、WSDL (要求/応答のみをサポートする) でサポートされていないパブリッシュ/サブスクライブ セマンティクスを使用して相互に対話する傾向があるということです。

NServiceBus のような ESB を導入すると、ツールが WSDL から生成するメソッド呼び出しではなく、メッセージと所有権に焦点が当てられます。これらのメッセージは、コード内のクラスとして、または相互運用性のために XSD 内で表すことができます。

コントラクトが WSDL に表示されないため、標準の Web サービスで行われる場合、あるエンドポイントから別のエンドポイントへの XML メッセージの転送は非常にばかげているように見えます。これは、ESB が登場する場所の 1 つです。

それが役立つことを願っています。

于 2010-03-26T18:05:14.807 に答える