以下是開發 COM+ CRM 的建議步驟:
- 開始開發之前,請將交易逾時設定為零(使用元件服務系統管理工具)。 設定VTRACE1登錄旗標(請參閱 COM+ CRM 登錄設定),以查看偵錯追蹤上的 CRM 警告和錯誤訊息。
- 判斷您需要使用的一組介面、結構化 (Variants) 或非結構化。 (請參閱 COM+ CRM 介面。)這取決於您用來開發 CRM 的語言,例如,Microsoft Visual C++ 或 Microsoft Visual Basic。
- 先培訓CRM工作人員。 判斷記錄檔中所需資訊。 定義所需的記錄類型及其格式。
- 偵錯 CRM 補償器會作為 CRM 範例的一部分提供(在 Windows SDK 中)。 可以暫時用來取代真正的 CRM 補償器來偵錯 CRM 工作。
- 當CRM工作元件正常運作時,開發實際的CRM補償器,並用實際的CRM補償器取代偵錯CRM補償器。
- 理想上一開始不測試復原案例可能比較好。 如果是,請在啟動該 CRM 伺服器應用程式之前,每次刪除 CRM 伺服器應用程式的 CRM 記錄檔。
考慮
- 提前備寫。 CRM 工作元件必須事先寫入,也就是說,它必須在實際執行該動作之前寫入日誌記錄,指出將要執行該動作。 此外,這條記錄必須在寫入後並且在執行動作之前強制寫入至磁碟。
- 隔離。 CRM 不會強制執行隔離。 CRM 設計必須在個別交易上提供多個客戶端之間的隔離,而且也必須考慮復原前的情況。
- 復原中。 CRM 工作人員必須處理「復原進行中」錯誤碼。 如需此錯誤碼的詳細資訊,請參閱 針對 COM+ CRM 進行疑難解答。
- 錯誤處理。 CRM 工作人員必須應對交易早於預期中止的情況。 請參閱 COM+ CRM 中錯誤處理一節。
- 復原時間。 CRM 補償器應設計為快速執行復原,讓該 CRM 伺服器應用程式的新工作不需要等候。
- 冪等性。 CRM 補償器可能會再次收到相同的日誌記錄,以撤銷或重做已撤銷或重做的操作。 CRM 補償器可能執行的動作必須是等冪的,這通常表示應該忽略從這些動作傳回的錯誤碼。
- 開始復原。 當CRM伺服器應用程式啟動時,就會執行CRM伺服器應用程式的復原。 不過,沒有自動啟動CRM伺服器應用程式。 應用程式開發人員應該考慮如何起始啟動和復原。
相關主題