Application Architecture Guide - Cheat Sheet - Integration Technology Matrix

From Guidance Share

Jump to: navigation, search

Note - The patterns & practices Microsoft Application Architecture Guide, 2nd Edition is now live at http://msdn.microsoft.com/en-us/library/dd673617.aspx.


Contents

Cheat Sheet: Integration Technology Matrix

Objectives

  • Understand the tradeoffs for each integration technology choice.
  • Understand the design impact of choosing integration technology.
  • Understand all available integration technologies.
  • Choose an integration technology for your scenario.

Overview

Use this cheat sheet to understand your technology choices for integration. Your choice of integration technology will be related to the application type you are developing. Use the Integration Technologies Summary to review each technology and its description. Use the Benefits and Considerations Matrix to make an informed choice of integration technology based on the advantages and considerations of each one. Use the Common Scenarios and Solutions to map your application scenario to common integration technology solutions.

Integration Technologies Summary

  • Microsoft® BizTalk® Server. BizTalk provides a complete stack of adapters, orchestration, messaging, and protocols for building Enterprise Application Integration (EAI)–enabled systems.
  • Microsoft Host Integration Server. Host Integration Server provides a platform for connecting applications with IBM zSeries and iSeries applications. In addition, Host Integration Server supports data connections between Microsoft Message Queuing (MSMQ) and IBM WebSphere MQ.
  • Microsoft Message Queuing (MSMQ). MSMQ allows you to connect applications using queued messaging. MSMQ provides guaranteed message delivery, priority-based messaging, and security. It can support integration with systems that may be occasionally connected or temporarily offline. MSMQ also supports both synchronous and asynchronous messaging scenarios.
  • Microsoft Enterprise Service Bus (ESB) Guidance. ESB Guidance is a logical entity that provides a loosely coupled messaging architecture created using BizTalk Server. It exploits the underlying BizTalk features to provide flexible and extensible architecture. It provides capabilities such as delivery assurance, message security, service registry, intelligent routing, and unified exception handling.

Benefits and Considerations Matrix

The following table breaks down the benefits and considerations for each integration technology.

Table 1 Benefits and Considerations Matrix Technology Benefits Considerations BizTalk * Enables electronic document exchange relationships between companies using Electronic Data Interchange (EDI) and/or Extensible Markup Language (XML) formats.

  • Integrates with non-Microsoft systems.
  • Easily extended to provide Enterprise Service Bus (ESB) capabilities.
  • WCF line-of-business (LOB) adapters enable development of custom adapters for use inside or outside BizTalk.
  • Provides out-of-box adapters for integration with systems such as SAP, Oracle, SQL, etc.
  • Provides SOAP adapter to help you to work with Web services. * Might lead to tightly coupled infrastructure.
  • Requires customization to achieve ESB capabilities.

Host Integration Server * Supports network integration between Microsoft Windows Server® and IBM mainframe or AS/400 computers.

  • Provides secure host access and identity management with support for Secure Sockets Layer (SSL)/Transport Layer Security (TLS), single sign-on (SSO), and password synchronization.
  • Provides data integration with support for MSMQ and XML-based Web services.
  • Includes a data access tool for creating and managing connections with Database 2 (DB2) databases.
  • Supports enterprise scalability and performance with simultaneous host sessions, load balancing, and hot failover.
  • BizTalk adapters for Host Systems are available to support BizTalk integration with DB2, IBM WebSphere MQ, Host Applications, and Host Files. * Must be installed in a Windows Server environment.
  • Requires Microsoft Visual Studio® 2005 or greater.
  • Requires MSMQ with routing support.

Microsoft Message Queuing (MSMQ) * Enables applications to communicate with each other across heterogeneous networks using message-based scenarios.

  • Supports reliable messaging between applications inside and outside of an enterprise.
  • Supports transactional capabilities, such as ensuring that messages are only delivered once, that messages are delivered in order, and confirmation that messages were retrieved from destination queues.
  • Provides message routing based on network topology, transport connectivity, and session concentration needs.
  • Allows message delivery over HTTP transport with support for SOAP Reliable Messaging Protocol (SRMP).
  • Supports the distribution of a single message to multiple destinations.
  • Is included with Windows Server 2003 and above.
  • Supports two deployment modes: domain mode with access to the Microsoft Active Directory® directory service, and Workgroup mode.
  • Includes WCF-provided endpoints for MSMQ. * Deployment mode should be considered prior to installing and configuring MSMQ.
  • When using the Workgroup deployment mode, messages cannot be encrypted, internal certificates cannot be used, and cross-platform messaging is not supported.
  • Independent clients should be used instead of dependent clients.
  • MSMQ is optimized for sending remotely and receiving locally. As a result, you should avoid remote queue reads.
  • You should avoid functions that query Active Directory.
  • Asynchronous notifications using events can become lost.
  • WCF endpoints require Microsoft .NET Framework 3.0 or above.

Microsoft Enterprise Service Bus (ESB) Guidance * Provides dynamic resolution of service endpoints at run time, which abstracts endpoint definition.

  • Decouples the message transformation from the application.
  • Integrates closely with WCF to provide security and reliable messaging.
  • Provides fault detection and reporting, through unified exception handling for both system and business exceptions.
  • Provides out-of-box resolvers for communicating with service registries such as Universal Description, Discovery and Integration (UDDI).
  • Supports an itinerary-based approach for routing and transformation.
  • Supports client-side and server itineraries.
  • Supports resolver extensibility for creating custom resolvers.
  • Supports designer for itinerary creation.
  • Supports exception management portal.
  • Exposes all key features such as exception handling, resolver, etc., as a Web service.
  • Provides itinerary tracking using Business Activity Monitoring (BAM). * You need BizTalk server.
  • You might need customization for a specific business scenario.
  • Needs Dunda’s charts for exception management portal.
  • The EBS itinerary tracking data does not have out-of-box display.
Technology Benefits Considerations
BizTalk * Enables electronic document exchange relationships between companies using Electronic Data Interchange (EDI) and/or Extensible Markup Language (XML) formats.
  • Integrates with non-Microsoft systems.
  • Easily extended to provide Enterprise Service Bus (ESB) capabilities.
  • WCF line-of-business (LOB) adapters enable development of custom adapters for use inside or outside BizTalk.
  • Provides out-of-box adapters for integration with systems such as SAP, Oracle, SQL, etc.
  • Provides SOAP adapter to help you to work with Web services. || * Might lead to tightly coupled infrastructure.
  • Requires customization to achieve ESB capabilities.
Host Integration Server * Supports network integration between Microsoft Windows Server® and IBM mainframe or AS/400 computers.
  • Provides secure host access and identity management with support for Secure Sockets Layer (SSL)/Transport Layer Security (TLS), single sign-on (SSO), and password synchronization.
  • Provides data integration with support for MSMQ and XML-based Web services.
  • Includes a data access tool for creating and managing connections with Database 2 (DB2) databases.
  • Supports enterprise scalability and performance with simultaneous host sessions, load balancing, and hot failover.
  • BizTalk adapters for Host Systems are available to support BizTalk integration with DB2, IBM WebSphere MQ, Host Applications, and Host Files. || * Must be installed in a Windows Server environment.
  • Requires Microsoft Visual Studio® 2005 or greater.
  • Requires MSMQ with routing support.
Microsoft Message Queuing (MSMQ) * Enables applications to communicate with each other across heterogeneous networks using message-based scenarios.
  • Supports reliable messaging between applications inside and outside of an enterprise.
  • Supports transactional capabilities, such as ensuring that messages are only delivered once, that messages are delivered in order, and confirmation that messages were retrieved from destination queues.
  • Provides message routing based on network topology, transport connectivity, and session concentration needs.
  • Allows message delivery over HTTP transport with support for SOAP Reliable Messaging Protocol (SRMP).
  • Supports the distribution of a single message to multiple destinations.
  • Is included with Windows Server 2003 and above.
  • Supports two deployment modes: domain mode with access to the Microsoft Active Directory® directory service, and Workgroup mode.
  • Includes WCF-provided endpoints for MSMQ. || * Deployment mode should be considered prior to installing and configuring MSMQ.
  • When using the Workgroup deployment mode, messages cannot be encrypted, internal certificates cannot be used, and cross-platform messaging is not supported.
  • Independent clients should be used instead of dependent clients.
  • MSMQ is optimized for sending remotely and receiving locally. As a result, you should avoid remote queue reads.
  • You should avoid functions that query Active Directory.
  • Asynchronous notifications using events can become lost.
  • WCF endpoints require Microsoft .NET Framework 3.0 or above.
Microsoft Enterprise Service Bus (ESB) Guidance * Provides dynamic resolution of service endpoints at run time, which abstracts endpoint definition.
  • Decouples the message transformation from the application.
  • Integrates closely with WCF to provide security and reliable messaging.
  • Provides fault detection and reporting, through unified exception handling for both system and business exceptions.
  • Provides out-of-box resolvers for communicating with service registries such as Universal Description, Discovery and Integration (UDDI).
  • Supports an itinerary-based approach for routing and transformation.
  • Supports client-side and server itineraries.
  • Supports resolver extensibility for creating custom resolvers.
  • Supports designer for itinerary creation.
  • Supports exception management portal.
  • Exposes all key features such as exception handling, resolver, etc., as a Web service.
  • Provides itinerary tracking using Business Activity Monitoring (BAM). || * You need BizTalk server.
  • You might need customization for a specific business scenario.
  • Needs Dunda’s charts for exception management portal.
  • The EBS itinerary tracking data does not have out-of-box display.


Common Scenarios and Solutions

BizTalk

Consider using BizTalk if you:

  • Want interaction with multiple Web services via an orchestrator as part of a Service-Oriented Architecture (SOA).
  • Want to support business-to-business (B2B) processes, including industry standards such as EDIFACT, ANSCI X12, HL7, HIPAA, or SWIFT.
  • Want parallel execution of services.
  • Need a solution that is highly reliable and requires a dedicated scalable server infrastructure with no code changes required.
  • Need to measure business Key Performance Indicators (KPIs) by configuring a BAM solution to provide near real-time visibility into your application’s process data.
  • Need to abstract your application business logic into declarative rule policies that can be easily changed in time to match dynamic changes of business requirements.

Host Integration Server

Consider using Host Integration Server if you:

  • Need to support interaction with IBM zSeries or iSeries applications.
  • Want to integrate BizTalk with DB2, WebSphere MQ, Host Applications, or Host Files.
  • Want to integrate MSMQ with WebSphere MQ.

Microsoft Message Queuing

Consider using Microsoft Message Queuing if you:

  • Need to support message-based interaction between applications.
  • Want to integrate with non-Microsoft platforms.
  • Need to support the SRMP.

Microsoft Enterprise Service Bus (ESB) Guidance

Consider using ESB Guidance if you:

  • Need to support an itinerary-based approach.
  • Need to support dynamic resolution and routing.
  • Need to use dynamic transformations.
  • Need to support robust and unified exception management for your EAI system.

Additional Resources

Personal tools