locked
Message Processing RRS feed

  • Question

  • Hi,

    I have a scenario where i need to pass 200-300 messages at a time. I have one method in my .net library class where it will take the data from the message and sends to service.

    I am calling that method in expression shape and passing the data to that method via parameters.

    when i sending few messages ie 30-40 i am getting service response as successfull, where as if i am passing large no of messages, For few messages I am getting "Operation timed out" error from the service. I believe that the service couldnt handle large no of messages at a time hence can anybody tell me how to handle messages in biztalk one after another. i want to send one message at one time, once its processing is completed i want to send the next message.


    Regards, vishal



    • Edited by b vishal Tuesday, February 14, 2017 10:50 AM
    Tuesday, February 14, 2017 10:48 AM

Answers

  • Since a Send Port is the correct way, the first thing you should try is just checking Ordered Delivery on that Send Port.

    That essentially serializes the calls to the service get's only one call at a time.  200-300 is very small.

    The question now becomes, does that meet you SLA?  If so, you're done.  Ordered Delivery is the simplest solution.

    Tuesday, February 14, 2017 2:46 PM
    Moderator

All replies

  • First, question: ".net library class where it will take the data from the message and sends to service."

    Why can't you use a Send Port to call the service?

    Next, yes, it is quite common for a BizTalk app, or any client, to overdrive a service.  It's usually easy to address.  It's best if you call it from a Send Port though.

    • Proposed as answer by Leo Erlandsson Tuesday, February 14, 2017 12:15 PM
    Tuesday, February 14, 2017 12:11 PM
    Moderator
  • Either Use a Singleton Orchestration, or limit the number of concurrent outbound connections from BizTalk. I recommend using a Send Port here, just as Johns-305 suggests.

    Did my post help? Please use "Vote As Helpful", "Mark as answer" or "Propose as answer". Thank you!

    Tuesday, February 14, 2017 12:14 PM
  • Hi,

    How to limit the number of concurrent outbound connections


    Regards, vishal

    Tuesday, February 14, 2017 2:18 PM
  • Since a Send Port is the correct way, the first thing you should try is just checking Ordered Delivery on that Send Port.

    That essentially serializes the calls to the service get's only one call at a time.  200-300 is very small.

    The question now becomes, does that meet you SLA?  If so, you're done.  Ordered Delivery is the simplest solution.

    Tuesday, February 14, 2017 2:46 PM
    Moderator