共用方式為


更新應用程式的最佳做法

本主題描述您在更新 BizTalk 應用程式和成品時應考慮使用的最佳做法。

版本控制

實作版本設定策略

  • 如果使用長時間執行的交易,或無法關閉 BizTalk 應用程式來執行升級或錯誤修正,則良好的版本控制策略是不可或缺的。 您應該規劃所有 BizTalk 成品的版本控制策略:架構、對應、自訂配接器、管線、管線元件、協調流程、商務規則、BAM,以及協調流程和對應中呼叫的自訂類別。

    比對 BizTalk 管理資料庫中的元件和全域組件快取 (GAC)

  • 請確定與 GAC 相同的元件版本位於 BizTalk 管理資料庫中,以便讓應用程式正常運作。 如果您沒有總是在部署組件時將其安裝到 GAC 中,就可能會在 GAC 和 BizTalk 管理資料庫中擁有不同的版本,這樣將會造成執行階段期間的處理錯誤。

    使用 BizTalk 元件檢查程式和遠端 GAC 工具來驗證版本控制

  • BizTalk 元件檢查程式和遠端 GAC 工具 (BTSAssemblyChecker.exe) 會檢查部署至 BizTalk 管理資料庫的元件版本,並確認這些元件已在所有BizTalk Server電腦上 GAC 中正確註冊。 您可以使用此工具來確認所有 BizTalk 節點上都已安裝包含特定 BizTalk 應用程式成品的所有元件。 此工具特別適合搭配實作版本控制策略,以驗證每個 BizTalk 電腦上已安裝一組正確版本的元件,特別是使用並存部署方法時。

  • 此工具可在 Support\Tools\x86\BTSAssemblyChecker.exe 使用BizTalk Server安裝媒體。

    使用版本設定產品

  • 您應該使用 Microsoft Visual Studio® Team Foundation Server 2010 等版本設定產品來追蹤和設定 BizTalk 成品的版本設定。 如需 Microsoft Visual Studio® Team Foundation Server 2010 的詳細資訊,請參閱 Microsoft Visual Studio® Team Foundation Server 2010 () https://go.microsoft.com/fwlink/?LinkId=210637

    將成品分解成多個 BizTalk 應用程式

  • 若要執行 BizTalk 成品的元件版本設定,您的 BizTalk 解決方案元件必須以這種方式處理 (封裝) ,才能允許BizTalk Server版本設定。 如需考慮因素的詳細資訊,請參閱 將成品新增至應用程式

更新應用程式

使用 .msi 檔案來更新應用程式

  • 升級應用程式通常是生產環境中刻意且精確的作業。 當您升級應用程式時,通常應該使用手動檢查清單。 不過,您可以使用 .msi 檔案來簡化特定步驟。 當您使用 .msi 檔案時,可以將應用程式成品包裝成可散發套件。 當您將更新的 DLL 推出至多個執行時間方塊或執行群組層級部署時,.msi 檔案特別有用。 當您建立 .msi 檔案時,應該從套件中排除所有其他未變更的資源和系結。

  • 如果您更新 BizTalk 元件,您應該在匯入並安裝 .msi 檔案之前、取消登錄、重新登記,然後手動啟動 BizTalk 成品。 如需更新 BizTalk 元件的詳細資訊,請參閱 檢查清單:更新元件

  • 如果您使用並存版本設定來升級BizTalk Server元件,則必須在使用 .msi 檔案之前和之後執行手動步驟。 如需所需手動步驟的詳細資訊,請參閱 檢查清單:使用並存版本設定更新應用程式

更新組件

在生產環境中遞增元件的版本

  • 如果您正在更新執行於實際執行環境的組件,您應該隨時遞增組件版本號碼。

    使用更新的元件更新 GAC

  • 當您更新包含協調流程、架構或對應的元件時,必須使用包含新版本的元件來更新 GAC。 否則,BizTalk Server會使用過時的版本。 若要這樣做,請在執行應用程式所系結主機實例的每部電腦上,從 GAC 卸載包含已更新成品的元件過期版本,並確定已安裝新版本。

    更新元件之後重新開機主機實例

  • 如果現有應用程式中的 BizTalk 元件已更新,您可能需要重新開機主機實例,變更才會生效。 重新開機主機實例會停止在主機實例上執行的其他所有應用程式。

更新成品

在相依成品之前取消部署相依成品

  • 如果您要取消部署另一個成品相依的成品,您必須先取消部署相依成品。

    注意

    如果您未先取消部署相依成品,BizTalk Server管理主控台會顯示警告,並防止以不正確的順序取消部署成品。

    請勿停止另一個應用程式相依的成品

  • 如果您停止一個應用程式中另一個應用程式所相依的成品 (這可能是停止整個應用程式所產生的結果),則相依的應用程式將無法正確運作。 如需停止應用程式的詳細資訊,請參閱 如何啟動和停止 BizTalk 應用程式 (https://go.microsoft.com/fwlink/?LinkID=154729) 。

    在移動成品之前,將參考新增至元件

  • 當您將成品移到新的應用程式時,除非新的應用程式有參考移動之成品所相依之成品的所在應用程式,否則也會移動該成品所相依的其他任何成品。 此外,相依於移動之成品的任何成品也會移動,除非包含這些成品的應用程式有參考新的應用程式。 當您移動成品時,系統會為您顯示也將一併移動之其他成品的清單。

更新系結

自動重新設定系結

  • 當您在應用程式中更新組件時,其繫結通常都會遭到覆寫,或是組件可能根本不會繫結,進而使您必須手動重新設定繫結。 您可以使用系結檔案自動執行此程式。 如果您要更新相同版本的元件,您可以先匯出元件的系結檔案,然後更新元件,然後將元件匯入應用程式,然後匯入系結檔來重新套用先前的系結。 如果您要以較新版本更新元件,您可以匯出系結檔案、編輯檔案以反映新的元件版本、將新元件匯入應用程式,然後匯入系結檔來套用新的系結。 如需系結檔案的詳細資訊,請參閱如何將系結 匯出至系結檔案。 如需編輯系結檔案的詳細資訊,請參閱自訂系結 檔案 (https://go.microsoft.com/fwlink/?LinkID=155000) 。

啟動或停止應用程式

停止應用程式以更新成品

  • 如果您未停止應用程式來更新應用程式中的成品,您必須停用端點來暫時停止發行至 MessageBox 資料庫,並停止並取消列出任何執行中的實例。 若要停止並取消列出執行中的實例,所有已解除凍結或暫停的實例都必須手動繼續和完成,或終止。

  • 雖然不必為了更新成品或安裝應用程式而停止應用程式,我們還是建議您一律在更新成品時停止應用程式。

另請參閱

如何將繫結匯出至繫結檔案