BizTalk Gurus

Custom Disassembler Component Question

rated by 0 users
Not Answered This post has 0 verified answers | 1 Reply | 1 Follower

posted on Mon, Jan 25 2010 7:27 AM

I have a custom disassember component that takes in a flat file and will create 1 to approximately 10,000 messages. I have noticed that none of the messages I create will be routed or worked upon only when all the messages have been created. Is this the expected behaviour of Biztalk or am I witnessing some throttling? I have a feeling some throttling is happening because there is a 2-3 second pause every few hundred messages or so (which is another issue I need to resolve.)

Is it possible for Biztalk to start routing and processing messages from a receive pipeline if more "sibling" messages are still being created?

Thanks,

Justin

All Replies

Top 500 Contributor
3 Posts
Randal replied on Tue, Jan 26 2010 5:32 AM

Hi Justin,

The disassembler will publish already 'disassembled' body messages to the database. It will not wait until the complete interchange has been processed. Everytime the GetNext method of the disassembler is called and not returns null a message is published to the database.

Make sure to implement a streaming approach in your component. Return a body message a soon as possible.

The delay in your case can indeed be caused by lack of resources on the BizTalk server. You can use performance monitor to find out if and why BizTalk  is throttling.

 

HTH,

Randal van Splunteren
MVP & MCTS BizTalk Server

 

Page 1 of 1 (2 items) | RSS