Performance Considerations for the BizTalk Adapters

This topic discusses several performance considerations that you should consider when you are working with the BizTalk adapters that are provided with Commerce Server 2009, also known informally as the Commerce Server 2009 adapters.

For more information about performance considerations for all BizTalk adapters, see https://go.microsoft.com/fwlink/?LinkId=79435.

Working with Large Messages in BizTalk Server

Remember that working with large messages (for example, full catalog import or export messages) in BizTalk Server can have significant performance consequences. If you must load the message into the XML document object model (DOM), as is required to perform schema transformations, the size of the message does matter to the performance consequences. Whenever possible, you should consider alternative approaches that do not require the message bodies of large messages to be loaded into the XML DOM within BizTalk Server.

Transaction Mode Settings and How They Affect Catalog and Inventory Import Performance

Both the Catalog and Inventory send adapters have a transport property that is named Transaction Mode. The settings for this property are Transaction and Non Transaction, with Transaction being the default. Treating a whole catalog or inventory import operation as a transaction offers the advantage of rolling back the whole operation if there are too many errors. However, a transacted import operation can require up to ten times longer to complete than a non-transacted import operation. You should take these factors into account when you select the transaction mode.

Optimizing the Maximum Number of Connections

By default, the Commerce Server 2009 adapters, running in the context of BizTalk Server, will use a maximum of two HTTP connections to interact with Commerce Server 2009. In some scenarios, this maximum number of connections can create a bottleneck that will adversely affect adapter performance. You can increase the maximum number of connections by changing the corresponding configuration value for BizTalk Server. In the file BTSNtSvc.exe.config, located in the BizTalk Server installation folder, add the following XML configuration information inside the existing <configuration> tags.

Note

Replace the bold text with your own values. We recommend that you set maxconnection to 12 times the number of processors on the Commerce Server 2009 computer with which your adapters are interacting.

    <system.net>
        <connectionManagement>
            <add address = "http://MyCommerceServerComputer" maxconnection = "24" />
            <add address = "*" maxconnection = "2" />
        </connectionManagement>
    </system.net>

Note

After editing this file, you will have to restart the BizTalk Server Application Service for your new maximum connection limit to take effect.

For more information about performance considerations for all BizTalk adapters, see https://go.microsoft.com/fwlink/?LinkId=79435.

Optimizing BizTalk Adapter Performance

If you find that your Commerce Server 2009 adapters are not performing as required, consider the following for improving performance:

  • Scale out. Dedicate multiple computers to running BizTalk Server, and divide adapter workload among them. Consider a separate BizTalk Server installation for each Commerce Server 2009 system with which you are integrating.

  • Scale up. Use faster computers that have more processing power.

  • Scale apart. Partition the workload of each adapter onto multiple computers by using the filter configuration capabilities of the Commerce Server 2009 adapters. For example, you could configure an Orders receive adapter endpoint on one BizTalk Server computer to export the orders of customers who have last names that begin with the letters A through L. On a different BizTalk Server computer, you could configure another Orders receive adapter endpoint to export the orders of customers who have last names that begin with the letters M through Z.

See Also

Other Resources

Concurrency Issues with the BizTalk Adapters

Troubleshooting the BizTalk Adapters

Developing with the BizTalk Adapters