There is no one thumb rule for separating BizTalk hosts. It is a good practice to separate hosts in a standard way. Consider following guidelines.
- Create separate hosts for Receive, Send and Processing operations
- Create new host if a specific throttling configuration to be used by Interface. Low latency, High throughput, Interface optimizations
- Create send and receive hosts specific to functionality\adapter
- It is necessarily not required for every Interface to create a new Host and Host Instances. Increasing number of host instances will cause a contention on a MessageBox database and resources may saturate and bring down overall performance.
- Host Instances can be shared across Interfaces. Share host Instances based on operation and functionality.
- Create new host if a Interface is memory\cpu intensive or critical or if it is experiencing throttling issues. This has to be assessed during performance tests.
It is important to follow naming conventions for proper separation strategy. Following is the guide line for naming hosts.
Eg: RxHost_x64_1_SQL . This is a receive host , with 64-bit, sequence 1 and running SQL adapter.