如何識別追蹤資料庫中的瓶頸
若要識別 BizTalk 追蹤 (BizTalkDTADb) 資料庫中的瓶頸,請執行下列步驟:
確認 SQL-Agent 服務正在執行。
確定「封存/清除作業」服務正在執行而且即將順利完成。
請確定TrackedMessages_Copy_BizTalkMsgBoxDB作業正在執行並順利完成。
確認是否有足夠的可用磁碟空間可以容納 DTADb 封存和資料庫成長。
當負載不足時,請使用專用主機來追蹤和測量主機佇列長度效能計數器。
檢查 Spool 資料表大小效能計數器,以取得隨時間增加的趨勢。
檢查封存/清除作業執行持續時間,以取得長時間執行時間。
在裝載 BizTalk 追蹤資料庫的磁片上,檢查每個讀取/寫入性能) 計數器的磁片回應性 (磁片秒數。
強烈建議您微調 DTA 清除和封存作業所叫用dtasp_BackupAndPurgeTrackingDatabase或dtasp_PurgeTrackingDatabase下列參數的值:
@nLiveHours Tinyint — 任何比 (存留時間還舊的實例,) + (即時天數) 將會連同所有相關聯的資料一起刪除。 預設值為 0 小時。
@nLiveDays Tinyint — 任何比 (存留時間還舊的實例,) + (即時天數) 將會連同所有相關聯的資料一起刪除。 預設間隔是 1 天。
@nHardDeleteDays Tinyint — 即使未完成) ,所有資料 (仍會遭到刪除。 為 HardDeleteDays 指定的時間間隔應該大於資料存留窗期。 資料存留窗期是您想要在 BizTalk 追蹤 (BizTalkDTADb) 資料庫中維護追蹤資料的時間。 早於此間隔的資料都將在下次封存時進行封存,然後再予以清除。 預設值為 30 天。
這些參數應該根據生產環境中的資料保留原則來設定,而在效能實驗室測試中,建議您使用值,如下所示:
declare @dtLastBackup datetime set @dtLastBackup = GetUTCDate ()
exec dtasp_PurgeTrackingDatabase 1, 0, 1, @dtLastBackup