開發 COM+ CRM 的設計建議
以下是開發 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伺服器應用程式。 應用程式開發人員應該考慮如何起始啟動和復原。
相關主題