What is the difference between static, dynamic and direct binding?Static Binding
1. A static port is already configured at the time of deployment to use a transport so as to deliver messages to a specific external end point. A transport type selects an adapter and a URI address. When an orchestration port is bound to a static Send port, the orchestration port is responsible for having each message provided with a context property called BTS.SPID (bound Send port).
2. Direct binding in BizTalk Server 2004 can be used to send messages from one Orchestration to another and can also be used to send messages directly into the message box.
3. In Direct Binding, properties like BTS.SPID, BTS.ReceivePortID, etc are not exploited automatically by orchestration ports.
4. So, BizTalk does not manage the binding of orchestration ports to messaging Receive and Send ports.
5. Developers can control subscriptions and message context to route messages.
6. External binding configuration cannot be used with directly bound orchestration ports.
7. Direct binding is the most flexible model but you cannot configure your orchestration ports using binding files. More programming needs to be done to fully exploit the flexibility on offer.
Transport types and locations dynamically selected by dynamic ports. Send port can dynamically route messages to different locations via different adapters. The orchestration port is responsible for having the required properties created within the message context.
What is the difference between static, dynamic and direct binding?- Static binding occurs at compile time. It compiles slower. It will have larger files and run faster.
- Dynamic binding occurs at runtime. It complies faster. It will have smaller files and may run slower.
- Direct binding provides method of allowing libraries to directly bind symbols to other libraries, instead of binding weakly and leaving the dynamic linker for figuring out which library has the symbol.