Monitor the size of databases and tables
Performance degrades on High Size of BizTalk databases. BizTalk Server takes a longer time than normal to process even a simple message flow scenario.
Enable tracking on BizTalk Server host
By default, tracking is enabled on the default host. BizTalk requires the Allow Host Tracking option be checked on a single HOST. When tracking is enabled, the Tracking Data Decode Service (TDDS) moves the tracking event data from the BizTalk Server Messagebox database to the BizTalk Server tracking database. If no BizTalk Server hosts are configured with the option to Allow Host Tracking or if the tracking host is stopped, then TDDS will not run and the TrackingData_x_x tables in the BizTalk Server Messagebox database will grow unchecked. Therefore, a dedicated BizTalk Server host should be configured with the option to Allow Host Tracking.
Use the correct BizTalk SQL Server Agent jobs
Execution of the BizTalk Server SQL Agent jobs are crucial for managing the BizTalk Server databases and for maintaining optimal performance.
Monitor and terminate suspended instances
Service instances can be suspended (resumable) or suspended (not resumable). These service instances may be Messaging, Orchestration, or Port. BizTalk Server 2009 accommodates termination and removal of these instances by using the Group Hub page in the BizTalk Server Administration Console or through the use of the Terminate.vbs script.
Monitor the performance counters of the PhysicalDisk performance object
BizTalk Server makes a large number of short, very quick transactions to SQL Server within one minute. If the SQL Server cannot sustain this activity, you may experience BizTalk Server performance issues. Monitor the Avg. Disk sec/Read, Avg. Disk sec/Transfer, and Avg. Disk sec/Write performance monitor counters in the PhysicalDisk performance object. The optimal value is less than 10 ms (milliseconds). A value of 20 ms or larger is considered poor performance.
Ensure all required BizTalk SQL Server Agent jobs are enabled and running
All the BizTalk SQL Server Agent jobs except the MessageBox_Message_Cleanup_BizTalkMsgBoxDb job should be enabled and running successfully. Do not disable any other job. The MessageBox_Message_Cleanup_BizTalkMsgBoxDb is called by the MessageBox_Message_ManageRefCountLog_BizTalkMsgBoxDb job.
Delete all unwanted data
If the databases have grown to become too large and if the data contained in the databases will not be required any longer, the preferred method is to delete the data
This article is also available in other languages
Thanks, I think these resources pretty much covers everything towards a sustainable BizTalk Server messaging environment.
Nice and very use full article.
Excelent article, practically everything we need to know in one place.
Added fix for deleting biztalk backup files.
Great one! Added an article about cleaning up the MarkLog table with Terminator
There is a mistake in which jobs should not be enabled:-
MessageBox_Message_ManageRefCountLog_BizTalkMsgBoxDb - this should be enabled !!!
It's actually MessageBox_Message_Cleanup_BizTalkMsgBoxDb which should not be enabled as it is called from MessageBox_Message_ManageRefCountLog_BizTalkMsgBoxDb .
Thanks Balbir I have changed it!