- Architecture

BizTalk: Internals: Schema Uniqueness Rule

A source code could be downloaded from here.Sometimes in BizTalk the artifact visibility can be global. We place the artifacts in different assemblies and it doesn’t change visibility. We place the artifacts in different BizTalk applications and it doesn’t change visibility. Let’s talk about the schemas. In my previous post BizTalk: Internals: namespaces I’ve shown that schemas have additional parameter, the Xml [target] namespace. Why it is so important? The BizTalk receives messages on the Receive ......

BizTalk: Internals: the Partner Direct Ports and the Orchestration Chains

Partner Direct Port is one of the BizTalk hidden gems. It opens simple ways to the several messaging patterns. This article based on the Kevin Lam’s blog article. The article is pretty detailed but it still leaves several unclear pieces. So I have created a sample and will show how it works from different perspectives. Requirements We should create an orchestration chain where the messages should be routed from the first stage to the second stage. The messages should not be modified. All messages ......

BizTalk: Internals: Namespaces

BizTalk team did a good job hiding the .NET guts from developers. Developers are working with editors and hardly with .NET code. The Orchestration editor, the Mapper, the Schema editor, the Pipeline editor, all these editors hide what is going on with artifacts created and deployed. Working with the BizTalk artifacts year after year brings us some knowledge which could help to understand more about the .NET guts. I would like to highlight the .NET namespaces. What they are, how they influence our ......

BizTalk: Ordered Delivery

It is one more description of the Ordered Delivery (OD) in BizTalk. The main article about it is in MSDN. Here I am discussing the BizTalk Ordered Delivery “implementation details”. OD Considerations Ordered Delivery (sequential) mode is opposite of the “Parallel Delivery” mode. Parallel Delivery is the most productive mode; the Ordered Delivery is less productive mode. Transports such MSMQ and protocols, supporting the WS-ReliableMessaging, are the protocols supporting OD. Other protocols as FTP, ......

BizTalk: Advanced Questions

This article is a Part 6 of the Interview Questions series. Part 1: BizTalk: Questions for interview without answers Part 2: BizTalk: Interview questions and principles Part 3: WCF: Questions for studying and interviewPart 4: WCF: Questions for studying and interview: DiscoveryPart 5: WCF: Questions for studying and interview: Routing Service Part 6: BizTalk: Advanced Questions Note: There is BizTalk Administrator interview questions by Tord Glad Nordahl. It is time for fun! These questions are for ......

BizTalk: Samples: Error Handling, Email Notification

One problem with email notifications is it usually sends too many emails. Errors frequently happen in series. For example, a temporarily issue with network can result in hundreds repetitive emails. In result an email notification designed as a “VIP” notification is downgraded to the “annoying” status. This email flooding could be mitigated with this solution. A Sample demonstrates using the emails for sending notification in case of failed messages. It compounds several similar errors in one email ......

BizTalk: Sample: Error Handling

Recently I uploaded a "BizTalk: Sample: Error Handling" in MSDN Gallery This sample shows the BizTalk features: Routing Failed Messages in ports Catching Failed Messages with Send Port Catching Failed Messages with Orchestration Handling Exceptions inside Orchestration Handling SOAP Fault messages inside Orchestration ......

BizTalk Orchestration Naming Conventions

This is a second part of the BizTalk Naming Convention. Part 1: biztalk: BizTalk solution naming convention Special Orchestration Objects <Message> =: msg_ + <ShortMessageType> <Variable> =: var_ + <Name> <CorrelationSet> =: cor_ + <Name> <OrchestrationParameter> =: par_ + < Name> <RoleLink> =: roleLink_ + <Name> Note: These objects are special BizTalk objects. They are used in different language context and sometime they use different language ......

BizTalk: Using context for routing

[See Sample: Context routing and throttling with orchestration] Imagine the project where most of the routing happens between orchestrations. I.e. routing is mostly between the MessageBox and orchestration with direct endpoints. Imagine also the most of the messages are with the same Message type. Usually in this case messages got the special node only for the routing. For example, the field can be the “Originator” or “Recipient” or “From” or “To”. What wrong is with this approach, it creates the ......

BizTalk: Sample: Context routing and Throttling with orchestration

[See BizTalk: Using context for routing] The sample demonstrates using orchestration for throttling and using context routing. Usually throttling is implemented on the host level (in BizTalk 2010 we can also use the host instance level throttling). This sample demonstrates the throttling with orchestration convoy, that slows down a message flow from some customers. Sample implements sort of quality service agreement layer for different kind of customers. The sample demonstrates the context routing ......

BizTalk: Suspend shape and Convoy

Part 1: BizTalk: Instance Subscription and Convoys: Details This is a Part 2. I am discussing the Suspend shape together with Convoys and going to show that using them together is undesirable. In previous article we investigated the Instance Subscriptions and how they could create situation with dangerous zones in processing. Let' start with Suspend shape. [See the BizTalk Help] "You can use the Suspend shape to make an orchestration instance stop running until an administrator explicitly intervenes, ......

BizTalk: Instance Subscription and Convoys: Details

This is Part 1. Part 2. BizTalk: Suspend shape and Convoy Convoys are frequently used in the in the orchestrations in BizTalk Server. Sometimes we have got contra intuitive behavior in the convoys, when messages and orchestrations get suspended in unpredictable manner. This issue is well-known, the suspended messages get name the "zombie". The name is unofficial, but issue is still there. Here I would describe in details, what, when and why this zombie situations are happen. An orchestration can ......

SQL Server Management Studio: Dynamic Folders

One of the problem with SQL Server Management Studio is it shows the objects in one list. For example, see the list of stored procedures for the BizTalkMsgBoxDb database, one of the BizTalk database. It is a huge list. Smart developers are trying to make this list useful and searchable and use suffixes and prefixes to group the objects together. See prefixes “adm_” and “bts_”. Following this practice we have got the nested compound prefixes. See the subgroups after the “bts_” prefix. It is completely ......

BizTalk and SQL: Alternatives to the SQL receive adapter. Using Msmq to receive SQL data

If we have to get data from the SQL database, the standard way is to use a receive port with SQL adapter. SQL receive adapter is a solicit-response adapter. It periodically polls the SQL database with queries. That’s only way it can work. Sometimes it is undesirable. With new WCF-SQL adapter we can use the lightweight approach but still with the same principle, the WCF-SQL adapter periodically solicits the database with queries to check for the new records. Imagine the situation when the new records ......

BizTalk: History of one integration project

[Russian version of the article] "In the beginning God made heaven and earth. Then he started to integrate." At the very start was the requirement: integrate two working systems. [fairy tale of the system integrators] Small digging up: It was one system. It was good but IT guys want to change it to the new one, much better, chipper, more flexible, and more progressive in technologies, more suitable for the future, for the faster world and hungry competitors. One thing. One small, little thing. We ......

BizTalk: Timeline: Platform Support

This is the second part. Part 1: BizTalk: Timeline: Development Tools. As you can see, the last version of the BizTalk 2010 shifts the platform support to new versions of the .NET, SQL Server, and Visual Studio, and finish support for the previous platform versions. High-quality picture in PDF format ......

BizTalk: Timeline: Development Tools

This is Part 1. Part 2: BizTalk: Timeline: Platform Support Now it is the timeline of the development tools only. It is a little bit "unofficial". For example, I included the ESB but not RFID. Versions 2000 and 2002 are not covered , there only placeholders. Mainly because since the 2004 version it is completely new product from many points of view, including the developer's point of view. It is interesting, the main tools: the Schema Editor, Mapper, Orchestration Editor, Pipeline Editor were not ......

UDDI standard is a niche technology. Why?

New standard the UDDI was announced several years ago [see the history in Wikipedia]. The UDDI future was promising. I was sure for that. I thought, the future is for Web-services [WS], and it is. Isn’t that mean, we need services to search Web-services in internet, some Registries/Catalogs of the Web-services? How we could find the WS in internet? Google Search was not effective in this; it is still not effective now. By any means, the UDDI idea should win; all WS-s should work with UDDI Registers. ......

BizTalk: Compensation Model

BizTalk: Compensation Model As Charles Young mentioned, the Compensation is one of the most under-used features of the BizTalk. See “BizTalk Server 2006: The Compensation Model” article. If you didn’t read his article, I would strictly recommend it. Next article to read is “Transactions and Compensation Using BizTalk Server” by Richard Seroterand the "Atomic Transaction Shape" webcast by Alan Smith There are still many questions in using Compensation in BizTalk. · What is the proper order of the ......

BizTalk:BAM Operations: brief summary

BAM Operations, a brief summary Installing the BAM infrastructure BAM infrastructure composed on the base of the SQL Analysis Services (SASS) and the SQL Integration Services (SISS). The SQL Notification Service is an optional element. 1. Before installing BAM make sure the SQL Analysis Services and the SQL Integration Services are installed. If not, install them. 2. Create the BAMAnalysis and the BAMStarSchema databases. It can be done in separate step or while the BizTalk configuration. 2.1. Start ......

Full - Architecture Archive