共用方式為


開發 COM+ CRM 的設計建議

以下是開發 COM+ CRM 的建議步驟:

  1. 開始開發之前,請將交易逾時設定為零(使用元件服務系統管理工具)。 設定VTRACE1登錄旗標(請參閱 COM+ CRM 登錄設定),以查看偵錯追蹤上的 CRM 警告和錯誤訊息。
  2. 判斷您需要使用的一組介面、結構化 (Variants) 或非結構化。 (請參閱 COM+ CRM 介面。)這取決於您用來開發 CRM 的語言,例如,Microsoft Visual C++ 或 Microsoft Visual Basic。
  3. 先培訓CRM工作人員。 判斷記錄檔中所需資訊。 定義所需的記錄類型及其格式。
  4. 偵錯 CRM 補償器會作為 CRM 範例的一部分提供(在 Windows SDK 中)。 可以暫時用來取代真正的 CRM 補償器來偵錯 CRM 工作。
  5. 當CRM工作元件正常運作時,開發實際的CRM補償器,並用實際的CRM補償器取代偵錯CRM補償器。
  6. 理想上一開始不測試復原案例可能比較好。 如果是,請在啟動該 CRM 伺服器應用程式之前,每次刪除 CRM 伺服器應用程式的 CRM 記錄檔。

考慮

  1. 提前備寫。 CRM 工作元件必須事先寫入,也就是說,它必須在實際執行該動作之前寫入日誌記錄,指出將要執行該動作。 此外,這條記錄必須在寫入後並且在執行動作之前強制寫入至磁碟。
  2. 隔離。 CRM 不會強制執行隔離。 CRM 設計必須在個別交易上提供多個客戶端之間的隔離,而且也必須考慮復原前的情況。
  3. 復原中。 CRM 工作人員必須處理「復原進行中」錯誤碼。 如需此錯誤碼的詳細資訊,請參閱 針對 COM+ CRM 進行疑難解答。
  4. 錯誤處理。 CRM 工作人員必須應對交易早於預期中止的情況。 請參閱 COM+ CRM 錯誤處理一節。
  5. 復原時間。 CRM 補償器應設計為快速執行復原,讓該 CRM 伺服器應用程式的新工作不需要等候。
  6. 冪等性。 CRM 補償器可能會再次收到相同的日誌記錄,以撤銷或重做已撤銷或重做的操作。 CRM 補償器可能執行的動作必須是等冪的,這通常表示應該忽略從這些動作傳回的錯誤碼。
  7. 開始復原。 當CRM伺服器應用程式啟動時,就會執行CRM伺服器應用程式的復原。 不過,沒有自動啟動CRM伺服器應用程式。 應用程式開發人員應該考慮如何起始啟動和復原。

COM+ 補償資源管理器概念