方法: Windows Server AppFabric を使用してワークフロー サービスをホストする
AppFabric でのワークフロー サービスのホスティングは IIS/WAS でのホスティングに似ています。 唯一の違いは、ワークフロー サービスの投入、監視、および管理のために AppFabric に用意されているツールです。 このトピックでは、「実行時間の長いワークフローサービスを作成する」で作成したワークフロー サービスを使用します。 ワークフロー サービスの作成方法はそちらのトピックで説明されています。 このトピックでは、AppFabric を使用したワークフロー サービスのホスティング方法を説明します。 Windows Server App Fabric の詳細については、Windows Server App fabric のドキュメントを参照してください。 下の手順を完了する前に、Windows Server AppFabric がインストールされていることを確認してください。 これを行うには、Internet Information Services (inetmgr.exe) を開いて、 [接続] ビューでサーバー名をクリックし、[サイト] をクリックしてから [既定の Web サイト] をクリックします。 画面の右側に [AppFabric] というセクションが表示されます。 (右側のペインの一番上に表示される) このセクションが表示されない場合は、AppFabric がインストールされていません。 Windows Server AppFabric のインストールの詳細については、「Windows Server AppFabric のインストール」を参照してください。
単純なワークフロー サービスの作成
Visual Studio 2012 を開き、「実行時間の長いワークフローサービスを作成する」で作成した OrderProcessing ソリューションを読み込みます。
[OrderService] プロジェクトを右クリックし、 [プロパティ] をクリックしてから [Web] タブをクリックします。
プロパティ ページの [開始動作] セクションで [ページを指定する] をクリックし、編集ボックスに「Service1.xamlx」と入力します。
プロパティ ページの [サーバー] セクションで [ローカル IIS Web サーバーを使用する] をクリックし、「
http://localhost/OrderService
」と入力します。[仮想ディレクトリの作成] ボタンをクリックします。 これで新しい仮想ディレクトリが作成され、プロジェクトが作成されるときに必要なファイルが仮想ディレクトリにコピーされるようにプロジェクトが設定されます。 または、仮想ディレクトリに .xamlx、web.config、および必要な DLL を手動でコピーすることもできます。
Windows Server AppFabric でホストされるワークフロー サービスの構成
インターネット インフォメーション サービス マネージャー (inetmgr.exe) を開きます。
[接続] ペインで OrderService 仮想ディレクトリに移動します。
OrderService を右クリックし、 [WCF サービスと WF サービスの管理] 、 [構成] の順にクリックします。 [アプリケーションの WCF と WF の構成] ダイアログ ボックスが表示されます。
[全般] タブをクリックして、次のスクリーン ショットに示すような、アプリケーションに関する全般的な情報を表示します。
[監視] タブをクリックします。次のスクリーン ショットに示すような、各種の監視設定が表示されます。
AppFabric でのワークフロー サービスの監視の構成の詳細については、AppFabric による監視の構成に関するページを参照してください。
[ワークフローの永続化] タブをクリックします。ここで、次のスクリーン ショットに示すように、AppFabric の既定の永続化プロバイダーをアプリケーションで使用するように構成できます。
Windows Server AppFabric でのワークフロー永続化の構成の詳細については、AppFabric でのワークフロー永続化の構成に関するページを参照してください。
[ワークフロー ホスト管理] タブをクリックします。ここでは、次のスクリーン ショットに示すように、アイドル状態のワークフロー サービス インスタンスをアンロードして永続化するタイミングを指定できます。
ワークフロー ホスト管理の構成の詳細については、AppFabric でのワークフロー ホスト管理の構成に関するページを参照してください。
[自動開始] タブをクリックします。ここで、次のスクリーン ショットに示すように、アプリケーションでのワークフロー サービスに対する自動開始の設定を指定できます。
自動開始の構成の詳細については、App Fabric による自動開始の構成に関するページを参照してください。
[スロットル] タブをクリックします。ここで、次のスクリーン ショットに示すように、ワークフロー サービスのスロットル設定を構成できます。
スロットルの構成の詳細については、App Fabric によるスロットルの構成に関するページを参照してください。
[セキュリティ] タブを選択しますここで、次のスクリーン ショットに示すように、アプリケーションに対するセキュリティの設定を構成できます。
Windows Server AppFabric によるセキュリティの構成の詳細については、AppFabric によるセキュリティの構成に関するページを参照してください。
Windows Server AppFabric の使用
ソリューションを作成して、仮想ディレクトリに必要なファイルをコピーします。
OrderClient プロジェクトを右クリックし、 [デバッグ] 、 [新しいインスタンスを開始] の順にクリックしてクライアント アプリケーションを実行します。
クライアントが実行され、Visual Studio で [アタッチのセキュリティ警告] ダイアログ ボックスが表示されたら、 [アタッチしない] ボタンをクリックします。 これにより、IIS プロセスにアタッチしてデバッグしないように Visual Studio に指示します。
クライアント アプリケーションは直ちにワークフロー サービスを呼び出して待機します。 ワークフロー サービスはアイドル状態になり永続化されます。 これは、インターネット インフォメーション サービス (inetmgr.exe) を開始して、[接続] ペインで [OrderService] に移動し、それを選択することによって確認できます。 次に、右側のペインで [App Fabric ダッシュボード] のアイコンをクリックします。 次のスクリーン ショットに示すように、[永続的な WF インスタンス] の下に、永続化されたワークフロー サービスのインスタンスが 1 つ表示されます。
[WF インスタンスの履歴] には、ワークフロー サービスのアクティベーション数、ワークフロー サービス インスタンスの完了数、ワークフロー インスタンスの失敗数など、そのワークフロー サービスに関する情報が表示されます。 [アクティブなインスタンスまたはアイドル状態のインスタンス] の下に表示されるリンクをクリックすると、次のスクリーン ショットに示すように、アイドル状態のワークフロー インスタンスの詳細情報が表示されます。
Windows Server App Fabric の機能とその使用方法の詳細については、「AppFabric のホスティング機能」を参照してください。