On the back of Integrate 2014, Sam Vanhoutte will discuss view on some of the implications of the announcements made at the conference and talk about how this might affect the future for integration professionals
Overview of azure microservices and the impact on integration
1. Sponsored & Brought to you by
Overview of Azure Microservices and
the impact on integration
Sam Vanhoutte
https://twitter.com/SamVanhoutte
https://www.linkedin.com/in/samvanhoutte
2. Azure Microservices,
an introduction
Sam Vanhoutte
CTO Codit, Integration MVP
#IntegrationMonday
Warning! A lot of this information is subject to change and is
my personal interpretation of the online materials. I marked those
slides with a yellow dot in the top right corner.
3. Nice to meet you
SamVANHOUTTE
CTO, Codit
Integration MVP – BizTalkV-TSP
http://blog.codit.eu
@SamVanhoutte
International Focus -
HQ in BE
2000 Belgium
2004 France
2013 Portugal
Microsoft
Integration
2012 & 2013
Partner of theYear
Finalist
Application
Integration
Community
4. Agenda
Context & positioning
Azure Microservices, the reasoning
Early previews of BizTalk Microservices portal
A mock up
A technical deep(er) dive
My thoughts on the impact for BizTalk
How to prepare yourself
6. • Enterprise apps installed in a local datacenter
• Specialized BizTalk server integrated common
enterprise apps
• Few touch points with tight coupling
Traditional app
integration
7. Modern app integration
Enterprise apps on-premises and in cloud
Many touch points with loose coupling
Integration is no longer a vertical solution,
we believe it is core to the app platform
Tailspin Air
Contoso
9. Azure Microservices
The big announcement
App Containers and Hosting Environment
Cloud Orchestration Engine
Web and Mobile Services
Microservices Ecosystem
BizTalk Microservices
Build modern Web and Mobile apps:
• A common app container and
cross-platform extensibility model
• Out of box SaaS connectivity
• Integrated API management
• Built-in hybrid connectivity
• Available in public and private
cloud
API Management
10. What is a Microservice
Quoting http://martinfowler.com/articles/microservices.html
the microservice architectural style is an approach to developing a
single application as a suite of small services, each running in its
own process and communicating with lightweight mechanisms,
often an HTTP resource API.These services are built around
business capabilities and independently deployable by fully
automated deployment machinery.There is a bare mininum of
centralized management of these services, which may be written
in different programming languages and use different data
storage technologies.
the microservice architectural style is an approach to developing a
single application as a suite of small services
the microservice architectural style is an approach to developing a
single application as a suite of small services, each running in its
own process and communicating with lightweight mechanisms,
often an HTTP resource API.
the microservice architectural style is an approach to developing a
single application as a suite of small services, each running in its
own process and communicating with lightweight mechanisms,
often an HTTP resource API.These services are built around
business capabilities
the microservice architectural style is an approach to developing a
single application as a suite of small services, each running in its
own process and communicating with lightweight mechanisms,
often an HTTP resource API.These services are built around
business capabilities and independently deployable by fully
automated deployment machinery.
the microservice architectural style is an approach to developing a
single application as a suite of small services, each running in its
own process and communicating with lightweight mechanisms,
often an HTTP resource API.These services are built around
business capabilities and independently deployable by fully
automated deployment machinery.There is a bare mininum of
centralized management of these services
the microservice architectural style is an approach to developing a
single application as a suite of small services, each running in its
own process and communicating with lightweight mechanisms,
often an HTTP resource API.These services are built around
business capabilities and independently deployable by fully
automated deployment machinery.There is a bare mininum of
centralized management of these services, which may be written
in different programming languages and use different data
storage technologies.
11. Mapping concepts to implementation
Concept
Application of small services
Own process, lightweight communication
Focused on business capabilities
Independently deployable
Minimized centralized management
Different programming languages & storage
Compose business app from gallery
Azure Websites & HTTP gateway
Gallery with codeless services
MS’s are separately upgradable
API Gateway (security, deployment…)
Web Sites (C#, node.js, PHP…)
Azure
12. App Containers and Hosting
Building on a solid foundation
Proven cloud scale
Hybrid connectivity built-in
Open platform
Available on premises today with
Windows Azure pack
>400k
Apps Hosted
300k
Unique Customers
120%
Yearly Paid
Subscription Growth
Yearly Traffic Growth
>500% ~2Billion
Transactions daily
13. Built-in API Management
Hybrid connectivity
Throttle, rate limit and quota callers
Modern formats to existing APIs
Authentication + key management
Built-in analytics
Governance
Access
Control
Partner APIs
APIs for
On-Premises
and SaaS
14. Out-of-box Microservices
Standard Protocols
Common Enterprise Apps
Most Popular consumer and
Enterprise SaaS
Available through the
marketplace
Web Services
(SOAP+WCF)
File
Siebel
Microsoft SQL Server
Informix
Oracle Database
SQL Azure
FTP/FTPS
Microsoft Dynamics AX
SMTP
HTTP, HTTPS (REST)
Websphere MQ
Microsoft SharePoint
Azure Services
(Mobile + Others)
MongoDB
SFTP
Coupa
BOX
AS400
Azure Services
(Service Bus)
Quickbooks
Salesforce
Sugar CRM
Microsoft Dynamics AX
Chatter
Facebook
Azure HDInsight
Marketo
Twitter
Azure Services
(Storage Blob +Table)
Microsoft Yammer
Zoho
OneDrive
SuccessFactors
Zuora
Twilio
Twitter
Workday
SalesForce
Office 365
IBM DB2
Microsoft Dynamics CRM Online
SAP
15. BizTalk features as
Microservices
Validation
Batching/Debatching
Format Conversion (XML, JSON, FlatFile)
Extract
Transform
Mediation Patterns (Request Response,
One Way etc)
Business Rules
Trading Partner Management
AS2/X12/EDIFACT
16. Workflow engine and Web-
based process designer
JSON based workflow definition
Orchestrates API execution
Supports long running processes
and control flows
Provides rich logging, diagnostics
Enables developers and business
users to easily define and track
business process
17. Complete web + mobile
experiences
Rich PaaS offer with cross-platform
for .NET, Java, node.js, PHP…
Built-in autoscale and load balance
High availability and auto-patching
Continuous integration and DevOps
26. Mockup – dev experience
2. Add microservice definition
27. Mockup – dev experience
3. Provide microservice metadata
28. Mockup – dev experience
4. EnableAPI metadata and configuration settings
29. Mockup – dev experience
5. Publish the micro service to the gallery
30. Mockup – dev experience
5. Publish the micro service to the gallery
31. VS/CLI
Microservice Gallery
(nuget-based)
Azure
Marketplace
Publish
Sync
Azure Portal
Resource Group
MicroserviceGateway
other Azure services…
Apps
• Siena
• Web
• Desktop
• Etc.
3rd party
SaaS
Source
Code Microservices
From gallery
Direct deployed
Workflow(also from gallery)
Workflow Definitions
Mobile(also from gallery)
Codeless Microservices
From gallery
Direct deployed
Custom Code
Regular code
On-
premises
32. VS/CLI
Microservice Gallery
(nuget-based)
Azure
Marketplace
Publish
Sync
Azure Portal
Resource Group
MicroserviceGateway
other Azure services…
Apps
• Siena
• Web
• Desktop
• Etc.
3rd party
SaaS
Source
Code Microservices
From gallery
Direct deployed
Workflow(also from gallery)
Workflow Definitions
Mobile(also from gallery)
Codeless Microservices
From gallery
Direct deployed
Custom Code
Regular code
On-
premises
Isolated storage
Shared config
Secure token store
Microservice Gateway
Runtime
• Name resolution
• Isolated storage
• Shared config
Proxy
• API logging
• API access level
• Transforming API definition
Identity Broker
• AAD & social login
• Identity brokerage
• Secure token store
All
• external
inbound calls
• calls between
microservices
go through the
gateway
34. Encrypted shared storage
Context, settings & storage
public interface IIsolatedStorage
{
Task<string[]> EnumerateAsync();
// Return null if storage does not exist.
Task<Stream> OpenReadAsync(string name);
Task<Stream> OpenWriteAsync(string name);
Task DeleteAsync(string name);
}
35. Security
➔ Proxy
➔ API’s define public/private endpoints
➔ Auth Flow & Secrets
➔ Application secrets (Twitter, Facebook, etc)
➔ Azure Active Directory
➔ App and On Behalf Of Access
➔ RBAC rules
36. Monitoring
Provided capabilities
➔ Monitor Running Applications
➔ Installed applications
➔ Number of calls to components
➔ Network traffic including endpoints
➔ Detailed performance data
➔ Up time & crashes
➔ Component Author
➔ Crash logs for components
42. Getting started,
my advise
Think innovative
Learn about
AzureWeb Sites
API management &
concepts
Follow up on
announcements
Look into
Swagger,WADL
43. Thank you!
Keep in touch!
Call or mail us. Ask questions. Happy to help.
Stay tuned
LinkedIn
blog
.codit.eu codit.eu NewsletterTwitter
Pay us
a visit