Sponsored & Brought to you by
Minecraft Integration Demo Deep Dive
Michael Stephenson
https://twitter.com/michael_stephen
https://www.linkedin.com/in/michaelstephensonuk1
Agility & “Just in time integration”
Everything is
an APIESB is old you
now need a
NoESB
SOA solves
everything
Microservices
RULE!
JSON is
better than
XML
EAI is better
than Batch
This time next year
we will have a
million connected
devices
You need an ESB
2000 2015
Internet of Things
Wearables
Microservices
Big Data
Container Based Deployment
API / REST / JSON
Mobile
Cloud
SOAP / Web Services
SOA
Lightweight Integration
XML
EAI
EDI
Mainframes
Batch Integration
ETL
API Economy
ESB
20102005
We need a platform that can potentially
work with all of this
NoESB
On Premise
BizTalk Web Services SQL Server
Integration Services
Frameworks &
Foundation
.net
WCF
WF
SOAP
XML/XSD
XSLT
- 2013
Cloud
On Premise
Cloud & Bridging Technologies
Service Bus Queue
Service Bus Relay
Virtual Networking
Azure Connect
Windows Azure BizTalk Services Windows Azure BizTalk VM
BizTalk Server 2013
Windows Server
AppFabric
Windows Server
Service Bus
Windows Server
Workflow Manager
SQL Server
Integration Services
Windows Azure Web Role Windows Azure Worker Role
WCF Routing Service
Custom WCF
Services
Frameworks &
Foundation
.net
WCF
WF
SOAP
REST
AMQP
Windows
Azure
XML/XSD
XSLT
JSON
- 2014
Cloud
On Premise
Cloud & Bridging Technologies
Service Bus MessagingService Bus Relay VPN
BizTalk Services EAI
Azure BizTalk VM
BizTalk Server 2013 R2
Windows Server
AppFabric
Windows Server
Service Bus
Windows Server
Workflow Manager
SQL Server
Integration Services
WCF Routing Service
Custom WCF
Services
Frameworks & Foundation
.net
WCF
WF
SOAP
REST
AMQP
Azure
XML/XSD
XSLT
JSON
Traffic Manager BizTalk Services EDI
BizTalk Hybrid Connections Express Route BizTalk Adapter Service
Azure Active Directory Access Control Service
Azure Web Sites Notification Hubs Web & Worker Roles Cache
Azure SQL DB Document DB Scheduler Azure Automation Stream Analytics
Event Hubs API Management Virtual Network Data Factory
WebAPI
– 2015
Cloud
On Premise
Cloud & Bridging Technologies
Service Bus MessagingService Bus Relay VPN
BizTalk Services EAI
Azure BizTalk VM
BizTalk Server 2013 R2
Windows Server
AppFabric
Windows Server
Service Bus
Windows Server
Workflow Manager
SQL Server
Integration Services
WCF Routing Service
Custom WCF
Services
Frameworks & Foundation
.net
WCF
WF
SOAP
REST
AMQP
Azure
XML/XSD
XSLT
JSON
Traffic Manager BizTalk Services EDI
BizTalk Hybrid Connections Express Route BizTalk Adapter Service
Azure Active Directory Access Control Service
Azure Web Sites Notification Hubs Web & Worker Roles Cache
Azure SQL DB Document DB Scheduler Azure Automation Stream Analytics
Event Hubs API Management Virtual Network Data Factory
Swagger
WADL
WebAPI
Durable Task
Integration Platform
On Premise Applications Cloud Applications
Services
& API
ESB
EAI
How does this work????
Is this future integration
spaghetti?
Do you want to be a tug boat crew
or fighter pilots?
Service Gateway
API Management
Security
ManagementMonitoring
Business Service Business Service
Application
Connector Services
Integration Platform
On Premise Applications Cloud Applications
Application
Connector Services
Application
Connector Services
Application
Connector Services
Utility
Services
Service Gateway
API Management
Service Gateway
API Management
Service Gateway
API Management
On Premise Applications
Cloud Applications
EAI ESB Service Virtualization
Business Service Connecting to applications
Business Processes & Logic
Integration Infrastructure
Exposing services outside
the platformSuper charge API’s
On-Premise & Cloud IaaS Cloud PaaS Future additions
• IIS Virtual Directory
• Windows Service
• BizTalk
• Azure Website
• Azure Web Role
• Azure Worker Role
• Azure Web Job
• Azure Logic App
• Azure Web App
• Azure API App
• Docker
“REST” on the outside
“Messaging” in the middle
Service Gateway
API Management
Security
ManagementMonitoring
Business Service Business Service
Application
Connector Services
Integration Platform
On Premise Applications Cloud Applications
Application
Connector Services
Application
Connector Services
Application
Connector Services
Utility
Services
Service Gateway
API Management
Service Gateway
API Management
Service Gateway
API Management
On Premise Applications
Cloud Applications
EAI ESB Service Virtualization
Azure API Management
Azure APP Service (Websites + REST/WCF)
IIS + WCF IIS + REST
IIS + WCF/REST
Azure API App
BizTalk
BizTalk
BizTalk Azure Service Bus Sentinet
Business ServiceAzure Logic App
Sentinet
• Can we protect a room in
Minecraft so you can only enter
it if you are authenticated
against active directory?
• Can we query data from our line
of business systems?
• Can we trigger an enrolment
process from a student enrolling
for a course in Minecraft?
On Premise Data Centre
Active Directory
Azure
Azure Service
Bus Relay
Azure API Management
On Premise Data Centre
Azure Azure Service
Bus Queue
Azure API Management
Enrolment System
Courses System
On Premise Data Centre
Azure
Azure Service
Bus Queue
Azure API
Management
Enrolment System
Courses System
On Premise Data Centre
WCF Routing
Service
Azure
Azure Service
Bus Relay
Service Gateway
BizTalk
Azure BI Capability
Event Hubs
Stream Analytics Machine Learning
Power BI
Contoso
CRM
HR
eComm
Logistics
Customer
Regulatory
Financial
ERP
SupplierAPI
API
API
API
API
API
Unfortunately many companies are poor at
- ALM Particularly with BizTalk & Testing
- Dependency Management
- Configuration Management
We need to… How
Deal with a chaotic world With an agile integration platform
Have confidence in our
architecture
Have confidence in our
components & microservices
Have reliable and predictable
components & services
Good ALM processes
(Build / Test / Deploy)
Minecraft Integration Demo Deep Dive
Minecraft Integration Demo Deep Dive

Minecraft Integration Demo Deep Dive

  • 1.
    Sponsored & Broughtto you by Minecraft Integration Demo Deep Dive Michael Stephenson https://twitter.com/michael_stephen https://www.linkedin.com/in/michaelstephensonuk1
  • 2.
    Agility & “Justin time integration”
  • 3.
    Everything is an APIESBis old you now need a NoESB SOA solves everything Microservices RULE! JSON is better than XML EAI is better than Batch This time next year we will have a million connected devices You need an ESB
  • 4.
    2000 2015 Internet ofThings Wearables Microservices Big Data Container Based Deployment API / REST / JSON Mobile Cloud SOAP / Web Services SOA Lightweight Integration XML EAI EDI Mainframes Batch Integration ETL API Economy ESB 20102005 We need a platform that can potentially work with all of this NoESB
  • 5.
    On Premise BizTalk WebServices SQL Server Integration Services Frameworks & Foundation .net WCF WF SOAP XML/XSD XSLT
  • 6.
    - 2013 Cloud On Premise Cloud& Bridging Technologies Service Bus Queue Service Bus Relay Virtual Networking Azure Connect Windows Azure BizTalk Services Windows Azure BizTalk VM BizTalk Server 2013 Windows Server AppFabric Windows Server Service Bus Windows Server Workflow Manager SQL Server Integration Services Windows Azure Web Role Windows Azure Worker Role WCF Routing Service Custom WCF Services Frameworks & Foundation .net WCF WF SOAP REST AMQP Windows Azure XML/XSD XSLT JSON
  • 7.
    - 2014 Cloud On Premise Cloud& Bridging Technologies Service Bus MessagingService Bus Relay VPN BizTalk Services EAI Azure BizTalk VM BizTalk Server 2013 R2 Windows Server AppFabric Windows Server Service Bus Windows Server Workflow Manager SQL Server Integration Services WCF Routing Service Custom WCF Services Frameworks & Foundation .net WCF WF SOAP REST AMQP Azure XML/XSD XSLT JSON Traffic Manager BizTalk Services EDI BizTalk Hybrid Connections Express Route BizTalk Adapter Service Azure Active Directory Access Control Service Azure Web Sites Notification Hubs Web & Worker Roles Cache Azure SQL DB Document DB Scheduler Azure Automation Stream Analytics Event Hubs API Management Virtual Network Data Factory WebAPI
  • 8.
    – 2015 Cloud On Premise Cloud& Bridging Technologies Service Bus MessagingService Bus Relay VPN BizTalk Services EAI Azure BizTalk VM BizTalk Server 2013 R2 Windows Server AppFabric Windows Server Service Bus Windows Server Workflow Manager SQL Server Integration Services WCF Routing Service Custom WCF Services Frameworks & Foundation .net WCF WF SOAP REST AMQP Azure XML/XSD XSLT JSON Traffic Manager BizTalk Services EDI BizTalk Hybrid Connections Express Route BizTalk Adapter Service Azure Active Directory Access Control Service Azure Web Sites Notification Hubs Web & Worker Roles Cache Azure SQL DB Document DB Scheduler Azure Automation Stream Analytics Event Hubs API Management Virtual Network Data Factory Swagger WADL WebAPI Durable Task
  • 10.
    Integration Platform On PremiseApplications Cloud Applications Services & API ESB EAI
  • 11.
    How does thiswork???? Is this future integration spaghetti?
  • 14.
    Do you wantto be a tug boat crew or fighter pilots?
  • 18.
    Service Gateway API Management Security ManagementMonitoring BusinessService Business Service Application Connector Services Integration Platform On Premise Applications Cloud Applications Application Connector Services Application Connector Services Application Connector Services Utility Services Service Gateway API Management Service Gateway API Management Service Gateway API Management On Premise Applications Cloud Applications EAI ESB Service Virtualization Business Service Connecting to applications Business Processes & Logic Integration Infrastructure Exposing services outside the platformSuper charge API’s
  • 19.
    On-Premise & CloudIaaS Cloud PaaS Future additions • IIS Virtual Directory • Windows Service • BizTalk • Azure Website • Azure Web Role • Azure Worker Role • Azure Web Job • Azure Logic App • Azure Web App • Azure API App • Docker
  • 21.
    “REST” on theoutside “Messaging” in the middle
  • 23.
    Service Gateway API Management Security ManagementMonitoring BusinessService Business Service Application Connector Services Integration Platform On Premise Applications Cloud Applications Application Connector Services Application Connector Services Application Connector Services Utility Services Service Gateway API Management Service Gateway API Management Service Gateway API Management On Premise Applications Cloud Applications EAI ESB Service Virtualization Azure API Management Azure APP Service (Websites + REST/WCF) IIS + WCF IIS + REST IIS + WCF/REST Azure API App BizTalk BizTalk BizTalk Azure Service Bus Sentinet Business ServiceAzure Logic App Sentinet
  • 26.
    • Can weprotect a room in Minecraft so you can only enter it if you are authenticated against active directory? • Can we query data from our line of business systems? • Can we trigger an enrolment process from a student enrolling for a course in Minecraft?
  • 27.
    On Premise DataCentre Active Directory Azure Azure Service Bus Relay Azure API Management
  • 28.
    On Premise DataCentre Azure Azure Service Bus Queue Azure API Management Enrolment System Courses System
  • 29.
    On Premise DataCentre Azure Azure Service Bus Queue Azure API Management Enrolment System Courses System
  • 30.
    On Premise DataCentre WCF Routing Service Azure Azure Service Bus Relay Service Gateway BizTalk Azure BI Capability Event Hubs Stream Analytics Machine Learning Power BI
  • 32.
  • 34.
    Unfortunately many companiesare poor at - ALM Particularly with BizTalk & Testing - Dependency Management - Configuration Management We need to… How Deal with a chaotic world With an agile integration platform Have confidence in our architecture Have confidence in our components & microservices Have reliable and predictable components & services Good ALM processes (Build / Test / Deploy)

Editor's Notes

  • #12 If we think about the way applications are changing in the way they are build there are some good things happening. There are however some challenges which are not so clearly defined around the communication between microservices and the communication to from microservices to monolithic applications. Saying to just use a queue or HTTP leave a lot of scope for customers to make mistakes and use bad practices resulting in coupled systems. As an integration person we need to think about how we can address these challenges
  • #14 Application teams used to often see integration teams like the tug boat crew trying to maneuver this huge integration product around which was difficult to get what they wanted and moved slowly
  • #15 We still have a solid foundation (aircraft carrier), but the fighter jets represent our microservices within the integration platform for agility and fast response and specific tasks. When we start making our services work together we can create some great solutions.
  • #19 Types of Component There are the following types of component: App Connector Services Business Services Infrastructure Services (EAI, ESB, Service Virtualization, Security, Utilities) Service Gateways API Proxies This slide is about illustrating logically building the platform
  • #28 We can expose a Minecraft friendly API as a WebAPI on Azure App Service We can use Azure Service Bus Relay to bridge on premise We can use the Microservices architecture and Services Stack to make it easy to integrate with apps
  • #29 We could expose an existing enrolment process via the API stack The process in BizTalk can reuse our Services Stack We can integrate into LOB applications with BizTalk We can extend the process with light weight integrations on Azure App Service
  • #30 The business have a requirement to change the existing enrolment process and add some notifications to the end of it Rather than change whats there we can implement a simpler solution using App Service and try out the idea with zero change to the existing solution. If it doesn’t work we can bin it If it works well we can keep it or integrate something into existing integration process This fits really well with the idea of 2 speed IT and 2 speed integration
  • #31 Why did we choose Relay and not VPN Cost Setup Time Fewer infrastructure challenges Fail fast & Cheap Don’t have to worry about controlling access to other resources, the endpoint is the only resource Can easily expose to other consumers Why not just expose the services publically I don’t need to worry about my DMZ I don’t need to worry about DOS I don’t need extra infrastructure Why did we use WCF Routing Service Allowed us to expose non Microsoft technologies Routing Service can forward calls to another web service WCF Routing Service was a simple listener We can control which services are exposed via routing rules
  • #33 This is a big concern to me, our principles of separation of messaging and API combined with service virtualization and API management are how we think we will provide governance and management of this. Its important to remember that just stuffing an API Management product in front of your API’s isn’t a silver bullet to this.
  • #34 EG: App Service is new so this is the latest “when do we use what” challenge. WebApps and MobileApps have been out a while so will be lower risk but newer features may be less mature. We will use R&D to evaluate how well they fit into our way of working and how they fit into our patterns and how confident we are in them. This will decide when we are ready to bet on them and by how much. If we wanted to use an immature product in a niche area we might accept a less mature process for using it