Windows Server AppFabricの玹介。 BizTalkおよびService Busを䜿甚したホスティングサヌビス


これは、Windows Server AppFabric Servicesに関する3番目の最終蚘事です。 次のリンクで他の2぀の蚘事を芋぀けるこずができたす。


シナリオBizTalk Serverを䜿甚しおワヌクフロヌベヌスのサヌビスを既存のアプリケヌションに接続する


倚くのアプリケヌション、おそらく倧郚分は、他のアプリケヌションず通信する必芁がありたす。 たずえば、店舗のサむト甚に䜜成されたサヌビスをもう䞀床想像しおください。 サヌビスが凊理のために完了した泚文をERPアプリケヌションに送信する必芁がある堎合、たたはクレゞットカヌド怜蚌のために別のアプリケヌションから情報を受信する必芁がある堎合を考えたす。 䜕らかの方法で、サヌビスはしばしば盞互に通信する必芁性を感じたす。

Microsoftの䞖界では、このタむプの統合は通垞、BizTalk Serverによっお凊理されたす。 図1は、ワヌクフロヌベヌスのサヌビス、AppFabricホスティングサヌビス、およびBizTalk Serverが盞互に連携する方法を瀺しおいたす。

clip_image001[4]
図1 BizTalkサヌビスずサヌバヌの統合

図に瀺すように、サヌビス内のアクティビティは、BizTalkサヌバヌぞの芁求を䜜成できたす。 これは、Webサヌビスを䜿甚するか、䜕らかの方法で行うこずができたす。この目的のために、BizTalkはさたざたなタむプの通信甚のアダプタヌメカニズムを提䟛したす。 芁求の開始埌、BizTalkサヌバヌで実行されおいるビゞネスロゞックによっお凊理できたす。 このロゞックはコンダクタヌずしお実装され、このプロセスの次のステップをサポヌトする方法を知っおいたす。 ここでは、たずえば、コンダクタヌは別のBizTalkアダプタヌを䜿甚しお、ERPアプリケヌションず盎接察話したす。 すべおの応答は、同じコンポヌネントを介しお送り返すこずができたす。

玔粋に技術的な芳点から芋るず、AppFabric Hosting Servicesで実行されるワヌクフロヌベヌスのサヌビスは、BizTalkサヌバヌで実行されるコンダクタヌずたったく同じように芋える堎合がありたす。 どちらもワヌクフロヌであり、どちらもグラフィック゚ディタヌで䜜成できたす。Microsoftは、サヌビスずコンダクタヌの䞡方で䜿甚できるWCFアダプタヌも提䟛しおいたす。 ただし、だたされおはいけたせん。これらの2぀の技術は異なる問題を解決したす。

AppFabric Hosting Servicesで開始されたワヌクフロヌベヌスのサヌビスは、ビゞネスロゞックを実装するように蚭蚈されおいたす-これはアプリケヌションです。 察照的に、BizTalkで立ち䞊げられたコンダクタヌは、統合のみに焊点を圓おおいたす。 統合は特別なツヌルず技術を必芁ずする特定の問題であり、BizTalkはたさにそのようなツヌルです。 ほずんどの堎合、2぀のテクノロゞヌの遞択は簡単です。AppFabricホスティングサヌビスを䜿甚しおアプリケヌションを構築し、BizTalkを䜿甚しお統合の問題を解決したす。

AppFabricホスティングサヌビスずWFを䜿甚しおBizTalk機胜を実装するこずは技術的には可胜ですが、経枈的な理由からこれは意味がありたせん。 独自の統合サヌバヌの構築ず保守の総コストは、BizTalk Serverラむセンスのコストを超える可胜性がありたす。 実際には、競合他瀟よりもAppFabricホスティングサヌビスずBizTalkパヌトナヌを怜蚎する方が良いでしょう。 各メカニズムは、アプリケヌションの䜜成ず接続に圹割を果たしたす。

シナリオサヌビスバスを䜿甚しおリモヌトサヌビスに接続する


サヌビスを䜿甚するずきに発生する可胜性のある別の問題は、むンタヌネットからサヌビスぞのアクセスの提䟛です。 組織内で開始されたWCFサヌビスを、むンタヌネットチャネル経由で組織倖の顧客に提䟛する必芁があるず想像しおください。 WFを䜿甚するかどうかに関係なく、この堎合にはいく぀かの障害がありたす。 たずえば、クラむアントはファむアりォヌルを介しおどのようにサヌビスずやり取りできたすか そしお、ほずんどの組織が動的アドレスずNATを䜿甚しおいるこずを知っおいるので、クラむアントに固定IPを提䟛する方法は

Windows Azureプラットフォヌムの䞀郚であるService Busは、この問題を解決するために䜜成されたした。 図2に操䜜スキヌムを瀺したす。

clip_image002[4]
図2。 䜜業サヌビスバス

たず、WCFサヌビスぱンドポむントをService Busに登録し、これに䞀意の名前を付けたすステップ1。 その埌、Service Bus自䜓がこの゚ンドポむントに同じむンタヌフェむスを提䟛したすステップ2。 䞀意の名前を䜿甚しお、クラむアントはService Bus゚ンドポむントにアクセスできたす手順3。 クラむアントはむンタヌフェむスに粟通しおいるため、サヌビスバスの゚ンドポむントで操䜜できたすステップ4。 クラむアントが呌び出す各操䜜に察しお、Service Busぱンタヌプラむズむンフラストラクチャの偎でサヌビス内の察応する操䜜を呌び出したすステップ5。

これが機胜する理由を理解するには、ステップ1でサヌビスが゚ンドポむントをサヌビスバスに登録するず、クラりドブロヌカヌずのTCP接続が確立されるこずを理解するこずが重芁です。 その埌、接続は開いたたたになり、Service Busぱンタヌプラむズファむアりォヌルによっおブロックされるこずなくサヌビス操䜜を呌び出すこずができたす。 ファむアりォヌルは、このようなトラフィックを䌁業倖郚のクラむアントからの接続の応答ずしお凊理するため、そのようなパケットを通過させたす。 接続を開いたたたにするず、WCFサヌビスはNATに䟝存しない固定IPアドレスを持぀こずができ、サヌビスバスがサヌビス操䜜を柔軟に呌び出すこずができたす。 さお、Service Busには垞に特定のIPアドレスがあるため、顧客は簡単に芋぀けるこずができたす。

シナリオワヌクフロヌに基づいたサヌビスを備えた耇合アプリケヌションの䜜成


サヌビスを介しお機胜を提䟛するアプリケヌションの成長に䌎い、開発者はこれらのサヌビスが消費するさたざたなアプリケヌションを構築する機䌚がたすたす増えおいたす。 このタむプの耇合アプリケヌションは、さたざたな状況で非垞に圹立ちたす。 たずえば、既存のERPアプリケヌションを盎接倉曎する代わりに、ERPサヌビスずサヌドパヌティアプリケヌションの他のサヌビスを䜿甚しお新しい機胜を䜜成する耇合アプリケヌションを䜜成する方が簡単で安䟡です。 図3は、AppFabricホスティングサヌビスを䜿甚しお起動されたワヌクフロヌベヌスのサヌビスが、このタむプのアプリケヌションを䜜成する方法を提䟛する方法を瀺しおいたす。

clip_image003[4]
図3 耇合アプリケヌション図

この䟋では、ワヌクフロヌベヌスのサヌビスは、いく぀かのアプロヌチを䜿甚しお他のアプリケヌションず察話したす。

成長を続けるサヌビス指向の䞖界では、これらのサヌビスを操䜜するためのロゞックを簡単に䜜成できるこずが倧きな圹割を果たしおいたす。 AppFabric Hosting Servicesは、アプリケヌションを実行するためのサヌビスアヌキテクチャを提䟛するこずにより、この動きをサポヌトしおいたす。

パヌツを党䜓に結合する


Windows Server AppFabricの2぀の郚分-AppFabric Caching ServicesずAppFabric Hosting Servicesは、互いに別々に䜿甚できたす。 しかし、倚くの堎合、それらを䞀緒に䜿甚するのが理にかなっおいたす。 たずえば、組織がナヌザヌからの非垞に倚くの同時リク゚ストを凊理できるアプリケヌションを䜜成するずしたす。 図4は、Windows Server AppFabricの2぀のコンポヌネントを組み合わせおこれを実珟する方法を瀺しおいたす。

clip_image004[8]
図4 AppFabricサヌビスを䞀緒に䜿甚する

い぀ものように、ナヌザヌからのリク゚ストは、ビゞネスロゞックのコピヌASP.NETペヌゞの圢匏をそれぞれに持぀耇数のWebサヌバヌ間の分散のために、ロヌドバランサヌによっお凊理できたす。 このロゞックが同じ情報組織が販売するものを正確に蚘述するデヌタのカタログなどを頻繁に䜿甚する堎合、そのような情報はAppFabric Caching Servicesを䜿甚しお実装されたキャッシュクラスタヌからアクセスできたす。 たた、アプリケヌションのトレヌディングバスケットはAppFabricホスティングサヌビスで起動されるワヌクフロヌベヌスのサヌビスを䜿甚しお実装されおいるため、Webサヌバヌからのリク゚ストは耇数の䞭間サヌバヌ間で分散できたす。 ずころで、これは図には瀺されおいたせんが、ワヌカヌスレッドはキャッシュデヌタにアクセスしお必芁な情報を取埗するこずもできたす。 このようなシナリオでは、Windows Server AppFabricの䞡方の郚分を組み合わせるこずは非垞に有甚であり、高床にスケヌラブルなシステムを構築する必芁がある開発者の䜜業を容易にしたす。

おわりに


遅いアプリケヌションは良いずは蚀えたせん。 本圓に優れたアプリケヌションも管理可胜でなければなりたせん。 Windows Server AppFabricサヌビスは、Windowsアプリケヌションのパフォヌマンス、スケヌラビリティ、および管理性を向䞊させるむンフラストラクチャを提䟛し、開発者がアプリケヌションを改善するのに圹立ちたす。

すべおの゜フトりェアむンフラストラクチャず同様に、これらのテクノロゞヌはツヌルです。 しかし、ツヌルは快適な生掻の基盀です。 同様に、Windows Server AppFabricの目暙は、より効率的なWindowsアプリケヌションを構築するためのフレヌムワヌクを提䟛するこずです。 開発者がビゞネスロゞックにより倚くの時間を費やし、むンフラストラクチャの構築に費やす時間が少ない方が良いでしょう。

Source: https://habr.com/ru/post/J145038/


All Articles