Home Page › Forums › BizTalk 2004 – BizTalk 2010 › Direct Binding?
- This topic has 6 replies, 1 voice, and was last updated 9 years ago by
community-content.
-
AuthorPosts
-
-
September 23, 2008 at 1:18 PM #20811
Hi,
I have some questions. Could some one help me to find the solutions?
1.How does Logical direct binding works?
I created logical send port in my Orchestration and set up binding = “Direct” and Partner Orchestration port = “Message Box”. Does this mean message will be publish to message box so I can get the message using Physical send port ? Schema has promoted property vendorNo. so Can i use that promoted value in physical send port’s filter to send the out put xml to different vendors? Or Am i missunderstood the direct binding concept? If I can access from physical port, please let me know what information i need to use in filter.2. What is the better port binding choice? Direct Binding or Dynamic binding?
I have to send request and receive response xml files to multiple vendors at same time. Since vendors will be decide at run time, I can not use static ports. If I use the Dynamic binding, then I need to read the config file/ BRE to get the vendors address. I am looking for faster(less time consuming) method. Which port will be better choise?Thank you in advance,
Siva
-
September 23, 2008 at 3:47 PM #20813
1. Don’t use a partner orchestration port here. Instead, select “Routing will be determined by filter expressions.” Then you could creat a property schema with a context property named Vendor, and set the value of the context property before sending the message to the port. Then you can create a send port for each vendor (assuming there are not too many) and configure a filter expression on each send port. For example, you could have one send port with filter: Vendor = ‘VendorX’, and another send port with filter: Vendor = ‘VendorY’.
2. It depends. If you have a very small number of vendors ( maybe around 5 or less), then direct binding would be a good choice because you only have to create a few send ports. If you have many vendors, then dynamic binding is a better choice because you can use a single send port for all of them.
You do have another option: role links. Role links can get cumbersome though, so you would probably be happier with direct binding or dynamic send ports.
-
September 24, 2008 at 2:44 AM #20823
Hi Siva,
I think dynamic binding is better choice if you have more number of vendors.
Direct binding can be created using some XLANG’s code like
My_DynPort(Microsoft.XLANG’s.BaseTypes.Address)=”**Specify some address***”;
Chinnu
-
September 24, 2008 at 7:54 AM #20829
Thank you for your reply Guys,
I think I miss understood the Physical port concept. Could you guys help me to clear out. If I use same send port for multiple vendors, wouldn’t be slow? Does it mean message will be lineup and send one partner at a time?
In my case, I have 12 vendors at this point and we may add more vendors soon. I always think that, If i use one send port and if i send request to all 12 vendors at a same time and wait for the response, message will be send to one partner at a time sine i use only one send port. If i use 12 send port, then messages will send to all 12 partners at a same time. So i will get response faster than using one port. Also I need to call the map in send port to map vendors request message with ours. I have 12 maps now. Because each vendor have own request format.
(Time is the major concern in this project. Application should response with in 5 sec. I have to collect all the partners’ response and send back to back end system with in 5sec. Any received partner’s responses after 5 sec. will be ignored. This is why i am worrying to use dynamic port because I need to read the sender URL from config file or Business Rule engine and need to call different map for each patners)
Siva
-
September 24, 2008 at 9:18 AM #20830
If you send multiple messages to a single send port, the messages are only lined up and sent one at a time it you set Ordered Delivery. Otherwise you can have multiple instances.
In your scenario, you can only use a dynamic port if you perform your maps inside the orchestration, so you will need a large decide shape and knowledge of each vendor inside the orchestration. This will need to change everytime a new vendor was added.
By having multiple send ports, each send port can have its own map (and even protocol) while the orchestration does not need any vendor specific code.
By using a direct orchestartion port you will need to promote the property used for routing. If this property is set inside the orchestration it is only promoted if you create a correlation using this property type and initialise the correlation on the send port.
As RussW mention previously, this scenario is what RoleLinks are designed for.
-
September 24, 2008 at 3:33 PM #20832
Thank you Greg, It works.
Siva
-
-
-
-
September 24, 2008 at 7:52 AM #20828
Thank you Guys,
I think I miss understood the Physical port concept. Could you guys help me to clear out. If I use same send port for multiple vendors, wouldn’t be slow? Does it mean message will be lineup and send one partner at a time?
In my case, I have 12 vendors at this point and we may add more vendors soon. I always think that, If i use one send port and if i send request to all 12 vendors at a same time and wait for the response, message will be send to one partner at a time sine i use only one send port. If i use 12 send port, then messages will send to all 12 partners at a same time. So i will get response faster than using one port. Also I need to call the map in send port to map vendors request message with ours. I have 12 maps now. Because each vendor have own request format.
(Time is the major concern in this project. Application should response with in 5 sec. I have to collect all the partners’ response and send back to back end system with in 5sec. Any received partner’s responses after 5 sec. will be ignored. This is why i am worrying to use dynamic port because I need to read the sender URL from config file or Business Rule engine and need to call different map for each patners)
Siva
-
-
-
AuthorPosts
- The forum ‘BizTalk 2004 – BizTalk 2010’ is closed to new topics and replies.