Published on : Feb 6, 2014
Category : BizTalk Server
Minimize the amount of persistence points when developing your solution to guarantee scalability, throughput and low latency. Persisting data to the database is the single most expensive task in BizTalk, to avoid them you can group together send shapes in Orchestrations or not using Orchestrations all together by leveraging static or content based routing.
A persistence point happens whenever certain shapes occur on a BizTalk Orchestration such as the end of a transaction scope, the start Orchestration shape, the send shape and the end of the Orchestration. Whenever such persistence point happens the BizTalk engine will save the whole state of the Orchestration to the BizTalk Message Box and since writing to disk is the slowest thing you can do with basic computer resources it comes as a significant cost to the whole operation.
Reducing these persistence points will have a significant impact in the overall performance, you can avoid them all together if you don’t use Orchestrations in scenarios where you only do receive, transform and send. You can also reduce the amount of persistence points within a Orchestration if you for example group send shapes inside a atomic scope or use the Call Orchestration shape instead of the Start Orchestration shape. Read more on this topic
here.