Share via


設定服務:工作流程持續性索引標籤

您可以使用 [設定服務] 對話方塊中的 [工作流程持續性] 索引標籤,以啟用或停用將工作流程服務執行個體置入持續性儲存區的功能。選取 [SQL Server 工作流程持續性] 選項,以啟用將持續性服務執行個體置入 SQL Server 資料庫的功能。選取 [「自訂」或「無」] 選項以使用非 SQL Server 資料庫的執行個體儲存區或完全不使用持續性功能。

當您將 SQL Server 持續性提供者與服務關聯時,必須指定連接字串,讓提供者可連線到 SQL Server 2008 或 2005 持續性資料庫。您可以設定進階 SQL 持續性功能,例如按一下 [進階] 按鈕來啟動 [進階持續性設定] 對話方塊以設定下列功能:在執行個體完成之後將它們保留在持續性儲存區,以及使用 GZip 演算法將執行個體狀態資訊編碼。

重要

此索引標籤只適用於工作流程 (WF) 服務,不適用於 WCF 程式碼型服務。

對話方塊欄位

欄位

描述

「自訂」或「無」

選取此選項以將非 SQL Server 資料庫的執行個體儲存區與服務關聯,或完全不使用持續性功能。

SQL Server 工作流程持續性

選取此核取方塊以啟用 SQL Server 2008 或 2005 持續性資料庫的持續性執行個體狀態資訊。選取此選項時,必須為 [SQL Server 儲存區] 欄位指定值。

若未針對包含服務的應用程式啟用 net.pipe 通訊協定,而且您從 [「自訂」或「無」] 選項切換為 [SQL Server 工作流程持續性] 選項,且設定對話方塊是用於應用程式、虛擬目錄或服務等級,您將會在訊息方塊中看到下列警告訊息。

警告

工作流程持續性要求必須在應用程式上啟用 net.pipe 通訊協定。是否要在套用變更時啟用 net.pipe?

若按下此訊息方塊中的 [確定],請從下拉式清單中選取執行個體儲存區,然後按一下 [設定服務] 對話方塊上的 [確定] 或 [套用],這樣就會針對應用程式啟用 net.pipe 通訊協定。若要檢查是否已針對應用程式啟用 net.pipe 通訊協定,請在應用程式名稱上按一下滑鼠右鍵,指向 [管理應用程式] 並按一下 [進階設定],然後確定 [已啟用的通訊協定] 欄位中已列出 net.pipe 通訊協定。

在先前的案例中,您也會在索引標籤頂端看到下列警告訊息。

警告

工作流程持續性功能無法完全運作,因為應用程式的已啟用通訊協定清單中沒有 net.pipe 通訊協定

如果在針對服務啟用 SQL 持續性之後停用 net.pipe 通訊協定,然後開啟 [設定服務] 對話方塊並切換到 [工作流程持續性] 索引標籤,則也會看到此警告訊息。

若未針對包含服務的網站啟用 net.pipe 繫結,而且您從 [「自訂」或「無」] 選項切換為 [SQL Server 工作流程持續性] 選項,且設定對話方塊是用於網站等級,您將會在索引標籤頂端看到下列警告訊息。

警告

工作流程持續性功能無法運作,因為沒有為此網站啟用 net.pipe 通訊協定繫結。

若要針對網站啟用 net.pipe 繫結,請執行下列步驟:

  1. 在網站名稱上按一下滑鼠右鍵,然後按一下 [編輯繫結]。

  2. 在 [站台繫結] 對話方塊中,按一下 [新增]。

  3. 在 [新增站台繫結] 對話方塊中,在 [類型] 中選取 [net.pipe],在 [繫結資訊] 中輸入 *,然後按一下 [確定]。

  4. 按一下 [確定] 以關閉 [站台繫結] 對話方塊。

同樣地,您會在索引標籤頂端看到伺服器等級的下列警告訊息。

警告

工作流程持續性功能可能無法運作。對於需要持續性的應用程式,請確定已啟用的通訊協定清單中包含 net.pipe 通訊協定,並確定網站的繫結清單中包含 net.pipe 繫結。

SQL Server 儲存區

選取您要讓 SQL 持續性提供者使用的執行個體儲存區。下拉式清單中的執行個體儲存區是在本機中選取的等級定義,或從 IIS 組態階層中的較高等級繼承 (應用程式、網站、根 Web.config 或 machine.config)。在組態檔中定義的執行個體儲存區指向連接字串,SQL 持續性提供者使用此連接字串連線到 SQL Server 2008 或 2005 持續性資料庫。

提示

若未在下拉式清單中看到任何 SQL 執行個體儲存區,則您必須建立 SQL 執行個體儲存區。您可以使用下面<設定持續性儲存區>一節所述的步驟來建立 SQL 執行個體儲存區並予以初始化。

進階

按一下此按鈕可啟動 [進階持續性設定] 對話方塊,您可以在此對話方塊中設定進階持續性相關設定。

設定持續性儲存區

您可以透過執行 AppFabric 設定精靈來設定持續性儲存區 (您可以在順利執行安裝精靈之後立即執行設定精靈,或在初始安裝之後使用 [開始] 功能表來啟動設定精靈)。下列程序提供使用設定精靈來設定執行個體儲存區的步驟。

注意

在設定精靈中執行的許多步驟都可以透過執行 Application Server Extensions 設定 Cmdlet 來手動執行。

  1. 依序按一下 [開始]、[所有程式]、[Windows Server AppFabric] 及 [設定 AppFabric],以開啟「Windows Server AppFabric 設定精靈」。

  2. 在 [在您開始前] 頁面上,按一下 [下一步]。

  3. 在 [客戶經驗改進計畫] 頁面上,按一下 [下一步]。

  4. 在 [設定主控服務] 頁面上,使用下表來設定持續性儲存區,然後按一下 [下一步]。

    控制項 描述

    設定持續性組態

    選取此控制項以選取「工作流程管理」服務帳戶,以及選取並設定持續性提供者。

    AppFabric 工作流程管理服務帳戶

    顯示「工作流程管理」服務的 Windows 登入帳戶。預設值為 NT Authority\Local Service。您無法在此文字方塊中輸入服務帳戶,但必須按一下 [瀏覽] 並在顯示的 [選取使用者] 對話方塊中輸入服務帳戶。

    注意

    「工作流程管理」服務的安全性識別碼 (SID) 是 Administrators 群組的成員,因此 WMS 具有持續性資料庫的系統管理權限。

    變更

    若按下 [瀏覽] 按鈕來尋找「工作流程管理」服務帳戶,您將可以選取系統服務的使用者認證。您可以選取內建帳戶,或輸入自訂使用者名稱與密碼。在 [選取使用者] 對話方塊中,選取要用於服務的帳戶,然後按一下 [確定]。

    持續性提供者

    選取要為其授與持續性儲存區存取權的提供者。此清單將顯示已在本機 machine.config 檔案中註冊的有效資料提供者。

    重要

    在此版本中,您可以選取的唯一持續性資料提供者是 sqlStoreProvider。

    設定

    按一下此控制項以設定持續性提供者的組態。

    如何安裝其他持續性提供者

    您可以將持續性提供者新增至提供者清單,以便在 [持續性提供者] 下拉式清單方塊中選取。按一下此連結可取得有關如何新增提供者的說明。

  5. 若在 [設定主控服務] 頁面中針對 SQL 持續性提供者 (sqlStoreProvider) 按下 [設定],則會顯示 [Windows Server AppFabric 持續性儲存區組態] 對話方塊。下表說明此對話方塊中的控制項。使用此表格來設定持續性提供者,然後按一下 [確定] 以返回 [設定主控服務] 頁面。確認儲存區已順利初始化並註冊。

    控制項 描述

    在根 web.config 中註冊持續性儲存區

    選取此選項以註冊由連接字串識別的持續性儲存區,方式是將其組態新增至根 Web.config 檔案或在根 Web.config 檔案中更新其組態。這包括 ApplicationServerWorkflowInstanceStoreConnectionString 與其相關的「SQL 儲存區執行個體」項目。

    即使未選取 [初始化持續性儲存區],也可以選取此核取方塊。若資料庫已建立且已初始化,請執行此動作;或指向資料庫 (即使資料庫未初始化)。

    注意

    若已安裝「主控系統管理」工具但並未安裝「主控服務」功能,則此核取方塊會被停用。

    初始化持續性儲存區

    選取此選項以初始化由連接字串識別的持續性資料庫,您必須先這樣做才能使用該資料庫。初始化會建立資料庫結構描述,並根據結構描述建立結構。若該資料庫不存在,系統將會建立該資料庫並將它初始化。

    若選取此核取方塊,但未選取 [在根 web.config 中註冊 AppFabric 持續性儲存區],則將會視需要建立該資料庫並進行初始化,但該資料庫將無法從這部電腦存取。

    注意

    對於要建立的資料庫,您必須具有在目的地伺服器上建立資料庫的權限。

    連接字串

    指定用於儲存持續性事件之伺服器與資料庫的字串。

    在 [伺服器] 欄位中,輸入資料庫所在電腦的名稱。

    在 [資料庫] 欄位中,輸入將建立來存放持續性資料之資料庫的名稱,或從清單中選取現有的資料庫。

    注意

    對於此版本,您只能選取 SQL 持續性提供者的連接字串。預設名稱是 ApplicationServerWorkflowInstanceStoreConnectionString,而且無法變更。連接字串名稱是在根 Web.config 檔案中註冊。您可以在此對話方塊中變更伺服器與資料庫。

    安全性組態

    選取 [Windows 驗證] 或 [SQL Server 驗證]。預設會選取 [Windows 整合式安全性],而且會使用預設的內建群組填入群組。

    對於 Windows 驗證,若要變更系統管理員、讀者或使用者,請按一下 [瀏覽] 並使用標準的 [選取使用者或群組] 對話方塊來輸入不同的值。只有已選取 [初始化持續性儲存區] 時,才能變更系統管理員、觀察者或寫入者的值。

  6. 按一下 [設定 SQL 持續性儲存區] 對話方塊中的 [確定] 之後,您將會看到一個快顯視窗,其中說明您必須確認「工作流程管理」服務身分識別是 Persistence Database Administrators 角色的成員。如需詳細資訊,請參閱保護主控與持續性的安全主題。

  7. 設定持續性組態之後,請按一下 [設定主控服務] 頁面上的 [下一步] 以顯示 [設定快取服務] 頁面,然後繼續閱讀此主題的<設定快取服務>一節。

  8. 在 [設定快取服務] 頁面上,按一下 [下一步]。

  9. 在 [設定 AppFabric 快取節點] 頁面上,按一下 [下一步]。

  10. 在 [設定應用程式] 頁面上,清除 [啟動 Internet Information Services (IIS) 管理員],然後按一下 [完成] 以關閉設定精靈。

相關組態

[工作流程持續性] 索引標籤中的欄位對應至 sqlWorkflowInstanceStore 元素與 sqlWorkflowInstanceStore 元素上的 connectionStringName 屬性。若已選取 [SQL Server 工作流程持續性] 選項,系統會將 [sqlWorkflowInstanceStore] 元素新增至組態檔中與該服務關聯的服務 <behavior> 元素。sqlWorkflowInstanceStore 元素上的 connectionStringName 屬性會設定為您從 [SQL Server 儲存區] 下拉式清單選取之執行個體儲存區的連接字串。若將設定從 [SQL 工作流程持續性] 變更為 [「自訂」或「無」],則系統會從組態檔移除 [sqlWorkflowInstanceStore] 元素。

在下列範例組態中,已透過與服務 s1 關聯之行為元素中的 sqlWorkflowInstanceStore 元素,為服務啟用持續性功能。

<behaviors>
    <serviceBehaviors>
        <behavior name="TutorialServiceConfiguration">
            <sqlWorkflowInstanceStore connectionStringName="DefaultSqlWorkflowInstanceStoreConnectionString" hostLockRenewalPeriod="00:00:30" instanceEncodingOption="None" instanceCompletionAction="DeleteAll" instanceLockedExceptionAction="NoRetry" />        </behavior>
   </serviceBehaviors>
</behaviors>

安裝 AppFabric 時建立的執行個體儲存區是在根 Web.config 檔案中定義。您也可以在組態檔中建立自訂執行個體儲存區的項目。此索引標籤會取得您為 [SQL Server 儲存區] 欄位指向之執行個體儲存區選取的連接字串名稱,並在其所新增的 sqlWorkflowInstanceStore 元素中使用該連接字串。

    <microsoft.applicationServer>
        <persistence>
            <instanceStores>
                <add name="defaultSqlPersistenceStore" provider="SqlPersistenceStoreProvider" connectionStringName="DefaultSqlWorkflowInstanceStoreConnectionString" />
            </instanceStores>
        </persistence>
    </microsoft.applicationServer>

本節內容

  1. 進階持續性設定進階持續性設定

  2011-12-05