Ive been thinking a little about some of the different technologies in the Microsoft stack and how they overlay on the different capabilities I need within the integration architectures I have been involved with over the years.

Below I have tried to list as many of the different integration capabilities that come to mind as possible and the technologies that can help you implement those capabilities both on premise, or in the cloud as Iaas or as PaaS/SaaS.

 

 

Integration Capability On Premise Cloud/Hybrid IaaS Cloud/Hybird PaaS/SaaS Partner/Other
 

File Transfer Technologies

File Transfer IIS – FTP IIS on Azure VM – FTP API App – File Connector

API App – (s)FTP Connector

One Drive

Azure Blob Storage

 

Message Orientated Middleware

Messaging BizTalk Server

Windows Server Service Bus

MSMQ

BizTalk Server IaaS Azure Service Bus
Publish/Subscribe BizTalk Server

Windows Server Service Bus

BizTalk Server IaaS

Windows Server Service Bus

Azure Service Bus
Remote Procedure Call BizTalk Server

.net Custom

.net Custom

BizTalk Server IaaS

API Apps
Message Routing BizTalk Server

Windows Server Service Bus

BizTalk Server IaaS

Windows Server Service Bus

Azure Service Bus
JSON Support BizTalk Server

Windows Server Service Bus

BizTalk Server IaaS

Windows Server Service Bus

Azure Service Bus
XML Support BizTalk Server

Windows Server Service Bus

MSMQ

BizTalk Server IaaS

Windows Server Service Bus

Azure Service Bus

Azure Storage Queue

Message Streams SQL Server Stream Insight SQL Server Stream Insight Azure Service Bus Event Hubs

Stream Analytics

 

Application Access

LOB Applications BizTalk Server Adapters

WCF LOB Adapters

WCF LOB Adapters

BizTalk Server IaaS

API Apps
SaaS Applications WebAPI

BizTalk Server Adapters

WebAPI

BizTalk Server IaaS Adapters

API Apps
Application Programming Interface WebAPI

BizTalk Server Adapters

BizTalk Server IaaS Adapters

WebAPI

API Apps

Logic Apps

Application Web Services .net

BizTalk Server Adapters

.net

BizTalk Server IaaS Adapters

API Apps
Hybrid Connectivity

Azure Service Bus Relay

Azure VPN

Azure Express Route

BizTalk Services Hybrid Connection

Screen Scraper .net custom code .net custom code hosted on Azure UI Path
Host/Legacy Applications BizTalk – Host Integration Server

BizTalk LOB Adapters

BizTalk IaaS – Host Integration Server

BizTalk IaaS LOB Adapters

Host Integration API Apps
 

Service Orientated Technologies

Adapter BizTalk Server Adapters

WCF LOB Adapters

BizTalk Server IaaS

WCF LOB Adapters

API Apps
Application Wrapper WCF

Web API

BizTalk Server

BizTalk Server IaaS

WCF

Web API

API Apps
API Gateway/Proxy Azure API Management Sentinet
ESB BizTalk Server BizTalk Server IaaS Azure Service Bus + Logic Apps
 

Data Orientated Technologies

Database Replication SQL Server SQL Server VM Data Sync
Extract, Transform and Load (ETL) SQL Server Integration Services SQL Server VM Integration Services  Azure Data Factory
Data Mart and Data Warehouse Technologies SQL Server SQL Server VM  Azure Data Catalog

Azure SQL Data Warehouse

Azure Data Lake

BAM BizTalk Server BizTalk Server IaaS Power BI

Cortana Analytics

 

Brokers

Enterprise Application Integration BizTalk Server BizTalk Server IaaS  API Apps
Business Process Management BizTalk Server BizTalk Server IaaS Logic Apps
Integration Broker BizTalk Server BizTalk Server IaaS Logic Apps
 

Industry Verticals

HL7 BizTalk Server BizTalk Server IaaS
EDI BizTalk Server BizTalk Server IaaS Azure BizTalk Services
 

Other

SOAP Service Hosting Windows Service

IIS

Custom

BizTalk Server

Azure VM IIS

Azure VM Windows Service

Azure VM Custom

BizTalk Server IaaS

Azure Web Role

Azure Worker Role

Azure Web App

Azure Service Fabric

REST Service Hosting Windows Service

IIS

Custom

BizTalk Server

Azure VM IIS

Azure VM Windows Service

Azure VM Custom

BizTalk Server IaaS

Azure Web App

Azure Web Role

Azure Worker Role

Azure Service Fabric

Custom Background Processes Windows Service

Console Application

Azure VM Worker Role

Web Job

Connectivity Bridge Azure Service Bus Relay

Azure BizTalk Hybrid Connection

Transaction Management BizTalk Server

MSDTC

BizTalk Server IaaS

MSDTC on VM

Business Rules BizTalk Server BizTalk Server IaaS BizTalk API Apps In Rule
Transformation BizTalk Server BizTalk Server IaaS BizTalk API Apps
Human Workflow SharePoint

Dynamics CRM

Azure VM SharePoint

Azure VM Dynamics CRM

Office 365 SharePoint

Dynamics CRM

K2

PNMSoft

General Data Access Options .net

NuGet SDK’s

BizTalk Server Adapters

API Apps

ODBC

.net Linq/Entity Framework

.net

NuGet SDK’s

BizTalk Server Adapters

API Apps

ODBC

.net Linq/Entity Framework

API Apps
Identity Active Directory

ADFS

Microsoft Identity Manager

Azure AD Connect

Azure Active Directory

Azure Active Directory B2B

Azure Active Directory B2C

Monitoring System Centre Application Insights

Operations Insights

Azure Service Bus Event Hubs + Power BI

BizTalk 360
Time Based Scheduling BizTalk Scheduled Task Adapter

Windows Task Scheduler

BizTalk IaaS Scheduled Task Adapter

Azure VM Windows Task Scheduler

Azure Task Scheduler

Azure Automation Scheduling

Internet of Things Azure Service Bus Event Hubs

Azure IoT Hub

Stream Analytics

Machine Learning

Notification Hubs

Reference Data and Metadata BizTalk Server Cross Referencing

SQL Server Database

SQL Server Master Data Services

BizTalk IaaS Cross Referencing

SQL Server VM Database

SQL Server VM Master Data Services

Azure SQL Database

Document DB

Automated Build & Deploy Team Foundation Server

MS Build

Powershell

Team Foundation Server

MS Build

Powershell

Azure Resource Manager

Azure Automation

Azure Resource Manager

Azure Automation

Visual Studio Online

 

Not every customer needs every integration capability but its nice to know that a moderate sized set of technologies can give you the capability to deliver so many different types of integration requirement.  My favourite part of the microsoft technology stack is that when you are working with organisations who are embracing the cloud there are so many options available in both the infrastructure and platform space.

The key element in my mind is that in the modern digital enterprise, technology should not be the blocker and in reality today it is often administration processes such as procurement which are far more time consuming that technology implementation.  With that in mind I like the ability to, in a few clicks and with a small amount of governance, be able to add a new platform feature to support our requirements rather than each time I need a new capability have to go to market to take a stab in the dark at who is the “best of breed” of the vendors who I can then try to connect their square peg with the round holes in my integration platform to implement an integration solution which combines the two integration technologies and all of the support pain I feel later when things dont work and its always the other persons fault.  The Microsoft Integration Platform combining Windows Server and Azure lets me focus on solving real business problems while others could trying manage procurement processes and vendors for months before they even start solving the real problem.

Hey thats my 2 cents there but hopefully the above gives you a good idea of what technology fits in which box

 

 

Buy Me A Coffee