SlideShare una empresa de Scribd logo
1 de 83
How to choose the right Technology,
Framework or Tool to Build Microservices
Kai Wähner
kwaehner@tibco.com
@KaiWaehner
www.kai-waehner.de
Xing / LinkedIn  Please connect!
Key Messages
– Integration is key for success of Microservices!
– Real time event correlation is the game changer!
– TCO and Time-to-Market are major aspects for tool selection!
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Agenda
– Definition of a Microservice
– Architecture Requirements
– Concepts for Microservices
– Frameworks and Tools
– Getting Started
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Agenda
– Definition of a Microservice
– Architecture Requirements
– Concepts for Microservices
– Frameworks and Tools
– Getting Started
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
• Services implementing a limited set of functions
• Services developed, deployed and scaled independently
Microservices
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Shorter time to results
• Scale development and reuse of services
• Use the right technology for the job
Increased flexibility
• Change / improve any Microservice without
major disruption on apps or other services
Benefits of Microservices
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
7
Mhhh….
Sounds like SOA!
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Microservices clearly specify important differences to SOA
(as we see SOA implemented in most enterprises today):
• No commitment to a unique technology
• Greater flexibility of architecture
• Services managed as products, with their own lifecycle
• Industrialized deployment
• Dumb routes and smart endpoints instead of a heavyweight ESB
Sounds like SOA?
Avoid a jungle of technologies!
Integration still needed somewhere!
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
• All of these services require integration.
• All of these services and technologies require automation of deployment and configuration.
• All of these services require logging and monitoring.
• All of these services require hybrid deployment.
Challenges of Microservices
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Agenda
– Definition of a Microservice
– Architecture Requirements
– Concepts for Microservices
– Frameworks and Tools
– Getting Started
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Requirements for a Microservices Architecture
① Service Contracts
② Exposing new and existing Services
③ Discovery of Services
④ Coordination Across Services
⑤ Managing Complex Deployments and their Scalability
⑥ Visibility and Correlation across Services
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Agenda
– Definition of a Microservice
– Architecture Requirements
– Concepts for Microservices
– Frameworks and Tools
– Getting Started
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
13
Alternatives to Realize Microservices
Time
to
Market
Microservice
Frameworks
Microservice
Products
Slow Fast
Microservice
Concepts
IncludesIncludes
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Service Standards (OSGi, REST, SOAP)
Messaging Standards (JMS, MQTT, AMQP, WebSockets)
Continuous Delivery (Build, Deployment) and Elasticity
Service Management (Registry, Governance, Documentation)
Centralized Monitoring and Analytics (Log Analytics, Event Processing)
14
What Microservice Concepts do you need?
Time
to
Market
Microservice
Frameworks
Microservice
Products
Slow Fast
Microservice
Concepts
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Agenda
– Definition of a Microservice
– Architecture Requirements
– Concepts for Microservices
– Frameworks and Tools
– Getting Started
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
16
Alternatives to Realize Microservices
Time
to
Market
Microservice
Frameworks
Microservice
Products
Slow Fast
Microservice
Concepts
IncludesIncludes
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Requirements for a Microservices Architecture
① Service Contracts
② Exposing new and existing Services
③ Discovery of Services
④ Coordination Across Services
⑤ Managing Complex Deployments and their Scalability
⑥ Visibility and Correlation across Services
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Requirements for Microservices Architecture
#1: Services Contract
18
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
19
Service Contracts
Service provider express the purpose of the
Microservice, and its requirements
Other developers can easily access this
information
Service contracts, and the ability for
developers to discover them, serve that
purpose.
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
• Examples: IDL (CORBA), Java Interface, JMS Messages, SOAP, REST, …
• In Practice today:
– SOAP: Internal, standards-based, XML Schema, easy mappings and
transformations, performance no issue (anymore)
– REST (i.e. RESTful HTTP without HATEOAS): External, XML or JSON,
Good architecture for mobile devices (simplicity, separation of concerns,
no state, uniform interface)
– Messaging (e.g. WebSockets, MQTT): Good for millions of devices (IoT,
sensors)
• De facto standard for Microservices as of today: REST
• Internet of Things will move Messaging forward!
20
Technologies for (Micro)Service Contracts
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
21
Alternatives to Realize Microservices
Time
to
Market
Microservice
Frameworks
Microservice
Products
Slow Fast
Microservice
Concepts
IncludesIncludes
OSGi
WSDL, REST, SWAGGER,
XML / JSON Editor, IDE Support …
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
22
Swagger – The de facto Standard for REST
“Swagger is a simple yet powerful
representation of your RESTful API.
With the largest ecosystem of API
tooling on the planet, thousands of
developers are supporting Swagger
in almost every modern
programming language and
deployment environment. With a
Swagger-enabled API, you get
interactive documentation, client
SDK generation and discoverability.”
http://swagger.io/http://restlet.com/blog/2015/04/07/try-your-api-right-away-with-apisparks-built-in-swagger-ui/
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
23
Live Demo
Swagger for REST APIs in Action...
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Requirements for Microservices Architecture
#2: Exposing new and existing Microservices
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
25
Services come in various forms
Integration
Service
Monolith application SOA
Integration
Service
Service ServiceService Service
API Gateway
SaaS Service
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
NEW Services
– Build a service which uses (i.e. integrates) databases, files,
applications, services, …
EXISTING Services
– Expose existing internal service via REST, SOAP, JMS …
– Use external services (SaaS)
Does not really matter… Integration is key!
26
NEW vs. EXISTING Services
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Smart endpoints and dumb pipes
“When building communication structures between different processes, we've seen many products and
approaches that stress putting significant smarts into the communication mechanism itself. A good
example of this is the Enterprise Service Bus (ESB), where ESB products often include sophisticated
facilities for message routing, choreography, transformation, and applying business rules.
The Microservice community favours an alternative approach: smart endpoints and dumb pipes.
Applications built from Microservices aim to be as decoupled and as cohesive as possible - they own their
own domain logic and act more as filters in the classical Unix sense - receiving a request, applying logic as
appropriate and producing a response. These are choreographed using simple RESTish protocols rather
than complex protocols such as WS-Choreography or BPEL or orchestration by a central tool.
The two protocols used most commonly are HTTP request-response with resource API's and lightweight
messaging. The best expression of the first is
Be of the web, not behind the web
-- Ian Robinson”
http://martinfowler.com/articles/microservices.html#SmartEndpointsAndDumbPipes
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Smart endpoints and dumb pipes
“When building communication structures between different processes, we've seen many products and
approaches that stress putting significant smarts into the communication mechanism itself. A good example of this
is the Enterprise Service Bus (ESB), where ESB products often include sophisticated facilities for message routing,
choreography, transformation, and applying business rules.
The Microservice community favours an alternative approach: smart endpoints and dumb pipes. Applications
built from Microservices aim to be as decoupled and as cohesive as possible - they own their own domain logic
and act more as filters in the classical Unix sense - receiving a request, applying logic as appropriate and producing
a response. These are choreographed using simple RESTish protocols rather than complex protocols such as WS-
Choreography or BPEL or orchestration by a central tool.
The two protocols used most commonly are HTTP request-response with resource API's and lightweight
messaging. The best expression of the first is
Be of the web, not behind the web
-- Ian Robinson”
Agreed!
However, be aware that you have to do “ESB tasks” (integration, routing, transformation, etc.) in the service then!
Why? It has to be done somewhere! Agree?
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
29
Alternatives to Realize Microservices
Time
to
Market
Microservice
Frameworks
Microservice
Products
Slow Fast
Microservice
Concepts
IncludesIncludes
Frameworks (e.g. Apache CXF)
Integration Framework
Service Delivery Platforms
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
30
Build new services with frameworks and tools
Integration Framework
Apache Camel (JVM)
Spring Integration (JVM)
NServiceBus (.NET)
Service Frameworks
Java EE => JAX-RS /-WS (Apache CXF)
.NET => WCF
Python
Ruby
“you-name-it”
Service Delivery Platform (formerly often called ESB)
TIBCO BusinessWorks
Talend ESB
WSO2 ESB
“you-name-it”
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
31
Integration Framework - Apache Camel
Implement
Microservices logic
in so called “routes” …
1)
from(”rest:serverDummyURL")
.to("log:TEST?showAll=true”)
.direct(processOrder);
from(”jms:myQueue:in")
.to("log:TEST?showAll=true");
.direct(processOrder);
from("direct:processOrder")
.to(”javaBean:orderService?method=process”)
.to(“jdbc:myDatabase:myTable?sql=update…”)
.to(”jms:queue:order.out");
2) 3) … and expose it as service,
e.g. REST, SOAP or JMS.
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
32
Live Demo
Apache Camel in Action...
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Service Delivery Platform – TIBCO BusinessWorks
Simple Sophisticated Modeling
Multi-op Processes
Conversations
Event Handlers
Zero-code Integration
Non-stop Dev-Deploy
Visual Debugger
Accelerate Time to Results
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Integration as foundation of Microservices
 Access any data to use in
Microservices
 Expose standard transport from
Microservices
 Assemble new Microservices
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Leverage any technology to create Microservices
Abstract complex APIs using:
• Standard connectors
– File, JDBC, SOAP, REST, JMS,
etc.
• Application connectors
– SaaS (SFDC, Marketo), SAP, Big
Data, Mobile, legacy applications,
etc.
• Plugin development kit
• Programming languages
– Java, Scala, Ruby, etc.
 Onboard new technologies
 New channels
 New data sources
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
36
Create REST APIs service In Under A Minute
 Top-down or bottom-up modeling
 Automatic docs and testing web UI
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
37
Live Demo
TIBCO BusinessWorks 6 in Action...
BusinessWorks
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Requirements for Microservices Architecture
#3: Discovery of Services
38
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
The new “Open API” Economy
Your
Enterprise
Closed APIs
EDI Web
B2B SOA FTP
Pre-defined integration points
Limited, trusted partners
Strictly constrained interactions
Enterprise friendly
Open APIs
Opportunistic access points
Many partners, untrusted
Encourage new ideas
Developer friendly
Your
Enterprise
Partners
Innovators
Known
Parties
Consumers
Unknown
Parties
Suppliers
Coopetition
Employees
APIAPI
API
API
API
API
API
API
API API
API
API
API
API
API
API
API
API
API
API
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
40
Alternatives to Realize Microservices
Time
to
Market
Microservice
Frameworks
Microservice
Products
Slow Fast
Microservice
Concepts
IncludesIncludes
Service Registry
Governance
API Management
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
41
API Management - JBoss APIMAN
http://www.apiman.io
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
42
API Management - KONG
http://getkong.org/
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
43
API Management – WSO2 API Manager
http://wso2.com/landing/ppc/api-manager
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
• Developer self-service
• API Lifecycle
• API Monetization
API Portal
• Security & Access Control
• Event Based Policy Mgt.
• Federated Internet Scale
API Gateway
• Reporting / Visualization
• SLA’s & KPI’s
• Full Auditing
API Analytics
API Management – TIBCO API Exchange
Cloud Based
Or
On-Premise
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
TIBCO API Exchange - Portal
The API Portal allows all developer to
discover Microservices and their contracts,
read documentation, and test the APIs.
• Discovery of Services
• Service Catalog
– SOAP and REST services
– Interactive and unstructured docs
– Authentication by API Key, OAuth
– Create REST proxy from portal
• Contracts
– Pre-defined or custom QoS
– Rate/day, rate/second
– Approval workflow (or automatic)
– Plans can route to different targets
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
TIBCO API Exchange - Gateway
Authorize
Validate
Throttle
Route
Transform
Mediate
API Exchange Gateway
API Requests
Service Calls
Enterprise Service Bus
ERP MDM DB WMS
SOA
Event
Processing
BPM
Leverage existing
services
Gain access
control
Minimize
security risks
• Authorization - whose requests
• Access control granularity down to service endpoint
• Single-edit configuration changes through web user interface
• Security standards: LDAP, SAML, OAuth, WSPolicy, etc.
• Throttling - when requests are handled
• Rate & High-Water Mark, Quota, Time-of-Day, Error-rate/Payload-size,
Group Logical, Traffic shaping
• Policies and throttles can be extended with declarative rule language
in Studio
• Routing - where requests are handled
• Single-edit configuration through web user interface
• In-line transformation through configuration
• Orchestration logic can be hot-deployed
• By operation, version, size, time of day, etc.
• Mediation - how requests are handled
• ‘Flow’ logic
• Transformation and Validation logic
• Caching logic
Cache
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
API Consumer
Understand usage and performance through interactive reporting
for both API providers and consumers
API Provider
Operational Monitoring
Auditing
Application Performance
Usage/Limit Monitoring
Debugging
Measure and improve
application performance
Measure and improve on the
success of API initiatives
TIBCO API Exchange - Analytics
API Performance
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
48
Live Demo
TIBCO API Exchange in Action...
API Exchange
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Requirements for Microservices Architecture
#4: Coordination across services
49
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Smart endpoint, dumb pipes…  Messaging
• API is not just exposing a service
via SOAP / REST!
• JMS, MQTT, AMQP, WebSockets,
CoAP, DSS, …
• TIBCO FTL
– Peer-to-Peer messaging with the
power, flexibility and control of a
server-based store and forward
design
– Frees up application developers to
focus on message processing by
decoupling message distribution
from application development
 Developer focus on the service and
not the transport
 Highly scalable transport
 Events can be used for advanced
logic
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Extending Services to Mobile Applications
• eFTL servers provide increased
scalability for web and mobile based
applications
• Mobile clients communicate directly
with TIBCO eFTL servers over HTML5
Web-sockets. Native Mobile
Application Support
– Objective-C (iOS)
– Android
– JavaScript
TIBCO eFTL
Server
TIBCO eFTL
Server
TIBCO eFTL
Server
TCP Transport
TIBCO
EMS
TIBCO
Rendezvous
TIBCO
Messaging
Backbone
TIBCO
FTL
 Communication between apps and
devices,
 Communication from apps and devices to
your Microservices
 Robustness at the scale of the Internet of
Everything
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
52
Coordination across services via NEW services ?!
Smart service, dumb pipe (no ESB in the middle)…
How to coordinate?
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
53
Alternatives to Realize Microservices
Time
to
Market
Microservice
Frameworks
Microservice
Products
Slow Fast
Microservice
Concepts
IncludesIncludes
Frameworks (e.g. Apache CXF)
Integration Framework
Service Delivery Platforms
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
54
Apache Camel for Coordination across Services
Existing
Microservices
1)from(”rest:serverDummyURL")
.to("log:TEST?showAll=true”)
.direct(processOrder);
from(”jms:myQueue:in")
.to("log:TEST?showAll=true");
.direct(processOrder);
2)
from(”rest:serverRequestURL")
.choice()
.when(header("foo").isEqualTo("bar"))
.to(”rest:serverDummyURL")
.when(header("foo").isEqualTo("cheese"))
.to(”jms:myQueue:in")
.otherwise()
.to(”log:errorHandler");
Coordination with another route
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
BusinessWorks for Coordination across Services
• Apps/business services
are composed from
Microservices
• Some Microservices can
be composed to
accelerate developments  Graphical design and debug
 Stateful or stateless
 Service or event driven
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
56
In-Memory Data Grid
• Share data and store
context in an distributed
in-memory data grid
– Provides data storage for
services
• Speed up communication
and coordination between
Microservices
 Provide a common repository for
services managing the same
business objects
 Share change of context / state
as events
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
57
In-Memory Data Grid – Market Overview
http://blogs.the451group.com/
information_management/2015/03/18/
updated-data-platforms-landscape-
map-february-2015/
In-Memory Data Grids
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Integration with TIBCO BusinessWorks
TIBCO ActiveMatrix BusinessWorks Plug-in for ActiveSpaces
to utilize all the benefits of TIBCO ActiveSpaces without any coding
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Requirements for Microservices Architecture
#5: Managing complex deployments and
their scalability
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
60
Alternatives to Realize Microservices
Time
to
Market
Microservice
Frameworks
Microservice
Products
Slow Fast
Microservice
Concepts
IncludesIncludes
Build Management
Continuous Delivery
Flexible Deployment
Unified Administration
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
61
Continuous Delivery
http://en.wikipedia.org/wiki/Continuous_delivery
Benefits
• Accelerated Time to Market
• Building the Right Product
• Improved Productivity and Efficiency
• Reliable Releases
• Improved Product Quality
• Improved Customer Satisfaction
Combined with “Cloud”
• Private / Public / Hybrid PaaS
• Flexible Infrastructure
• Elasticity
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
62
Frameworks and Products for Continuous Delivery and DevOps
• Build Management
– Ant, Maven, Gradle
• Continuous Integration
– Jenkings, Bamboo
• Continuous Delivery
– Chef, Puppet, Salt
• Deployment (Elastic VMs / Cloud / Containers)
– Amazon Web Services, Microsoft Azure, CloudFoundry
– VMware, Openstack, Vagrant
– Docker, Spring Boot
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
TIBCO Silver Fabric
• DevOps in the TIBCO Universe
– Out-of-the-box support for TIBCO products such as BusinessWorks
– Complementary (not XOR!) to build, continuous integration and
delivery, cloud, container and VM tools (see last slide)!
• Continuously deploy, configure and manage your
applications and middleware, on premise or in the
cloud.
• DevOps – Continuous Integration / Delivery
– Configuration Manager for Global Variables
– End-to-End Scripting, Automation & Visibility
• Manages quality of deployed applications
– Ports Management & Elastic Load Balancer
– Dashboard & Full Visibility
– SLA based auto scaling & elasticity
Self Service
Administration
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
TIBCO TEA: Unified Administration
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
#6: Visibility and Correlation across Services
Requirements for Microservices Architecture
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
The frontiers between digital and
physical are blurring
The New Era: Fast Data Processing
• Events are analyzed and processed in
real-time as they arrive.
• Decisions are timely, contextual, and
based on fresh data.
• Decision latency is eliminated, resulting
in:
 Superior Customer Experience
 Operational Excellence
 Instant Awareness and Timely Decisions
© Copyright 2000-2015 TIBCO Software Inc.
Act &
Monitor
Analyze
Store
Voltage
Temperature
Vibration
Device
history
Temporal analytic: “If vibration spike is followed by temp spike then
voltage spike [within 12 minutes] then flag high severity alert.”
Event Processing (Correlation of Events)
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
69
Alternatives to Realize Microservices
Time
to
Market
Microservice
Frameworks
Microservice
Products
Slow Fast
Microservice
Concepts
IncludesIncludes
Rules Engine
Complex Event Processing
Streaming Analytics
Log Analytics
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
70
The need for a “Bus”?
Event correlation is the requirement,
where you really need a bus.
However, this bus is not an ESB, but an
in-memory event server.
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
71
Variety of Frameworks and Tools for Rules and Event Correlation
• Open Source
– Drools
– Esper
– WSO2 CEP
– …
• TIBCO
– CEP: BusinessEvents
– Streaming Analytics: StreamBase
– Live Datamart
• Other products
– Oracle Event Processing, Software AG’s Apama, IBM InfoSphere Streams, …
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
72
Live Demo
TIBCO StreamBase / Live Datamart in Action...
StreamBase
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
73
Centralized Monitoring
Applications, networks,
servers, and devices generate
data continuously
Growing volumes of big data
add costs, complexity, and risk
Separate, disparate and even
conflicting systems can:
• Open security holes
• Jeopardize compliance
• Disrupt operations
• Impede trouble-shooting
• “Last year at this time we were
processing about 20 Billion logs
per day. Today that number is 54
Billion.” –Leading MSSP
• “Most of the time a client comes
to us with an incident, when we
try to gather the logs we discover
the customer doesn’t have them
and never had a policy in place to
store or retain them”
• ‘Our problems are not lack of
access to data, but
understanding them. [Big Data] is
very useful…but I have to
understand it, and that's the
problem."
?
Applications, networks,
servers, and devices generate
data continuously
Growing volumes of big data
add costs, complexity, and risk
Separate, disparate and even
conflicting systems can:
• Open security holes
• Jeopardize compliance
• Disrupt operations
• Impede trouble-shooting
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
74
Log Analytics in an Enterprise Architecture
Messaging: Connectivity, Event Driven
ESB: Bus-based, System Integration
BPM CEP Analytics
Logging: Operational Insight/Intelligence
{
ServiceOriented
LoggingInfra
Systems
Monitoring
{
Hardware
Infrastructure
{
COTSSoftware
Infrastructure
Custom Applications
Custom Applications
Custom Applications
More
More
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
75
Log Analytics – Market Overview
• ELK Stack (Elasticsearch, Logstash, Kibana)
– Open Source frameworks, coding required
• TIBCO LogLogic
– Part of complete middleware stack, easy configuration and usage, Software or Appliance
• Splunk
– Market leader, most complete feature list, expensive, complex architecture, turns off if
volume limit reached
• HP ArcSight
– Powerful SIEM solution, very complex configuration
• Sumo Logic
– Small vendor, focused on log analytics
• IBM et al
– also offer a product for Log Analytics, of course! 
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
76
LogLogic: Monitor, Analyze and Predict Threats and Opportunities
© Copyright 2000-2015 TIBCO Software Inc.
• Visual Log Analytics for
Any Use Case
– User Authentication Activity
Tracking
– Performance, Firewall,
Network Traffic Analysis
– Threat Management
– Data Enrichment
• Self-Service Discovery
• Build your own
dashboards
• Insight into Action
– Quickly uncover unknown
relationships, trends, and
anomalies through ad-hoc
query and filtering
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
77
Live Demo
TIBCO LogLogic in Action...
LogLogic
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Agenda
– Definition of a Microservice
– Architecture Requirements
– Concepts for Microservices
– Frameworks and Tools
– Getting Started
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
79
How to continue on your Microservices Path?
• 1) Choose the Microservice concepts you need!
• 2) Think about your architecture requirements!
• 3) Evaluate your short list regarding features, usability, time-to-market
and TCO!
• 4) Try out the tools by yourself within the proof of concept!
• 5) Choose the right tool for the right job!
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
80
Best Practices for your Microservices Path
No big bang
Start small
Keep it simple
Only if added value
Not everywhere
Not everything
Not just technologies
Organizational changes needed
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Did you get the Key Message?
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Key Messages
– Integration is key for success of Microservices!
– Real time event correlation is the game changer!
– TCO and Time-to-Market are major aspects for tool selection!
“How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
Questions?
Kai Wähner
kwaehner@tibco.com
@KaiWaehner
www.kai-waehner.de
LinkedIn / Xing  Please connect!

Más contenido relacionado

La actualidad más candente

Build & Deploy Scalable Cloud Applications in Record Time
Build & Deploy Scalable Cloud Applications in Record TimeBuild & Deploy Scalable Cloud Applications in Record Time
Build & Deploy Scalable Cloud Applications in Record TimeRightScale
 
Streaming Analytics Comparison of Open Source Frameworks, Products, Cloud Ser...
Streaming Analytics Comparison of Open Source Frameworks, Products, Cloud Ser...Streaming Analytics Comparison of Open Source Frameworks, Products, Cloud Ser...
Streaming Analytics Comparison of Open Source Frameworks, Products, Cloud Ser...Kai Wähner
 
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...Kai Wähner
 
Microservices and Friends
Microservices and FriendsMicroservices and Friends
Microservices and FriendsYun Zhi Lin
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecturetyrantbrian
 
Microservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureMicroservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureJesus Rodriguez
 
From Monolithic to Microservices
From Monolithic to Microservices From Monolithic to Microservices
From Monolithic to Microservices Amazon Web Services
 
Microservices and SOA
Microservices and SOAMicroservices and SOA
Microservices and SOACapgemini
 
Software Architecture Fundamentals Part-1-Architecture soft skills
Software Architecture Fundamentals Part-1-Architecture soft skillsSoftware Architecture Fundamentals Part-1-Architecture soft skills
Software Architecture Fundamentals Part-1-Architecture soft skillsFreddy Munandar
 
Full lifecycle of a microservice
Full lifecycle of a microserviceFull lifecycle of a microservice
Full lifecycle of a microserviceLuigi Bennardis
 
Microservices in Practice
Microservices in PracticeMicroservices in Practice
Microservices in PracticeKasun Indrasiri
 
WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool fo...
WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool fo...WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool fo...
WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool fo...martinlippert
 
2015 cloud trend and cloud DR
2015 cloud trend and cloud DR2015 cloud trend and cloud DR
2015 cloud trend and cloud DRbizmerce
 
APIs in a Microservice Architecture
APIs in a Microservice ArchitectureAPIs in a Microservice Architecture
APIs in a Microservice ArchitectureWSO2
 
Machine Learning Applied to Real Time Scoring in Manufacturing and Energy Uti...
Machine Learning Applied to Real Time Scoring in Manufacturing and Energy Uti...Machine Learning Applied to Real Time Scoring in Manufacturing and Energy Uti...
Machine Learning Applied to Real Time Scoring in Manufacturing and Energy Uti...Kai Wähner
 
Microservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
Microservices Architectures: Become a Unicorn like Netflix, Twitter and HailoMicroservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
Microservices Architectures: Become a Unicorn like Netflix, Twitter and Hailogjuljo
 
Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...Chris Richardson
 
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...Kai Wähner
 

La actualidad más candente (20)

Build & Deploy Scalable Cloud Applications in Record Time
Build & Deploy Scalable Cloud Applications in Record TimeBuild & Deploy Scalable Cloud Applications in Record Time
Build & Deploy Scalable Cloud Applications in Record Time
 
Streaming Analytics Comparison of Open Source Frameworks, Products, Cloud Ser...
Streaming Analytics Comparison of Open Source Frameworks, Products, Cloud Ser...Streaming Analytics Comparison of Open Source Frameworks, Products, Cloud Ser...
Streaming Analytics Comparison of Open Source Frameworks, Products, Cloud Ser...
 
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
Cloud Native Middleware Microservices - Lessons Learned with Docker, Kubernet...
 
Microservices and Friends
Microservices and FriendsMicroservices and Friends
Microservices and Friends
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices
 
Microservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureMicroservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference Architecture
 
From Monolithic to Microservices
From Monolithic to Microservices From Monolithic to Microservices
From Monolithic to Microservices
 
Microservices and SOA
Microservices and SOAMicroservices and SOA
Microservices and SOA
 
Software Architecture Fundamentals Part-1-Architecture soft skills
Software Architecture Fundamentals Part-1-Architecture soft skillsSoftware Architecture Fundamentals Part-1-Architecture soft skills
Software Architecture Fundamentals Part-1-Architecture soft skills
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Full lifecycle of a microservice
Full lifecycle of a microserviceFull lifecycle of a microservice
Full lifecycle of a microservice
 
Microservices in Practice
Microservices in PracticeMicroservices in Practice
Microservices in Practice
 
WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool fo...
WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool fo...WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool fo...
WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool fo...
 
2015 cloud trend and cloud DR
2015 cloud trend and cloud DR2015 cloud trend and cloud DR
2015 cloud trend and cloud DR
 
APIs in a Microservice Architecture
APIs in a Microservice ArchitectureAPIs in a Microservice Architecture
APIs in a Microservice Architecture
 
Machine Learning Applied to Real Time Scoring in Manufacturing and Energy Uti...
Machine Learning Applied to Real Time Scoring in Manufacturing and Energy Uti...Machine Learning Applied to Real Time Scoring in Manufacturing and Energy Uti...
Machine Learning Applied to Real Time Scoring in Manufacturing and Energy Uti...
 
Microservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
Microservices Architectures: Become a Unicorn like Netflix, Twitter and HailoMicroservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
Microservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
 
Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...
 
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...
TIBCO BWCE and Netflix' Hystrix Circuit Breaker for Cloud Native Middleware M...
 

Similar a How to Choose the Right Technology, Framework or Tool to Build Microservices

Enable rapid service provisioning with cics, microservices and the z/OS Provi...
Enable rapid service provisioning with cics, microservices and the z/OS Provi...Enable rapid service provisioning with cics, microservices and the z/OS Provi...
Enable rapid service provisioning with cics, microservices and the z/OS Provi...Matthew Webster
 
Vancouver Microservices Meetup - Kickoff Session
Vancouver Microservices Meetup - Kickoff SessionVancouver Microservices Meetup - Kickoff Session
Vancouver Microservices Meetup - Kickoff SessionMatt McLarty
 
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...WSO2
 
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...apidays
 
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...Kai Wähner
 
The Reality of Managing Microservices in Your CD Pipeline
The Reality of Managing Microservices in Your CD PipelineThe Reality of Managing Microservices in Your CD Pipeline
The Reality of Managing Microservices in Your CD PipelineDevOps.com
 
NGINX, Istio, and the Move to Microservices and Service Mesh
NGINX, Istio, and the Move to Microservices and Service MeshNGINX, Istio, and the Move to Microservices and Service Mesh
NGINX, Istio, and the Move to Microservices and Service MeshNGINX, Inc.
 
Overview of azure microservices and the impact on integration
Overview of azure microservices and the impact on integrationOverview of azure microservices and the impact on integration
Overview of azure microservices and the impact on integrationBizTalk360
 
Cloud Native Middleware Microservices - 10 Lessons Learned
Cloud Native Middleware Microservices - 10 Lessons LearnedCloud Native Middleware Microservices - 10 Lessons Learned
Cloud Native Middleware Microservices - 10 Lessons LearnedKai Wähner
 
Evolving your Architecture to MicroServices
Evolving your Architecture to MicroServicesEvolving your Architecture to MicroServices
Evolving your Architecture to MicroServicesHector Tapia
 
Fun Times With Microservices
Fun Times With MicroservicesFun Times With Microservices
Fun Times With MicroservicesChristo Crampton
 
Fun Times with Microservices
Fun Times with MicroservicesFun Times with Microservices
Fun Times with MicroservicesChristo Crampton
 
[WSO2 API Day Dallas 2019] Extending Service Mesh with API Management
[WSO2 API Day Dallas 2019] Extending Service Mesh with API Management[WSO2 API Day Dallas 2019] Extending Service Mesh with API Management
[WSO2 API Day Dallas 2019] Extending Service Mesh with API ManagementWSO2
 
3298 microservices and how they relate to esb api and messaging - inter con...
3298   microservices and how they relate to esb api and messaging - inter con...3298   microservices and how they relate to esb api and messaging - inter con...
3298 microservices and how they relate to esb api and messaging - inter con...Kim Clark
 
Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Ken Owens
 
APIs from the Edge to the Mesh
APIs from the Edge to the MeshAPIs from the Edge to the Mesh
APIs from the Edge to the MeshNordic APIs
 
[WSO2 Integration Summit Madrid 2019] Emerging Architecture Patterns: API-cen...
[WSO2 Integration Summit Madrid 2019] Emerging Architecture Patterns: API-cen...[WSO2 Integration Summit Madrid 2019] Emerging Architecture Patterns: API-cen...
[WSO2 Integration Summit Madrid 2019] Emerging Architecture Patterns: API-cen...WSO2
 
[WSO2 Integration Summit Stuttgart 2019] Emerging Architecture Patterns: API-...
[WSO2 Integration Summit Stuttgart 2019] Emerging Architecture Patterns: API-...[WSO2 Integration Summit Stuttgart 2019] Emerging Architecture Patterns: API-...
[WSO2 Integration Summit Stuttgart 2019] Emerging Architecture Patterns: API-...WSO2
 
[WSO2 Integration Summit Paris 2019] Emerging Architecture Patterns API-centr...
[WSO2 Integration Summit Paris 2019] Emerging Architecture Patterns API-centr...[WSO2 Integration Summit Paris 2019] Emerging Architecture Patterns API-centr...
[WSO2 Integration Summit Paris 2019] Emerging Architecture Patterns API-centr...WSO2
 

Similar a How to Choose the Right Technology, Framework or Tool to Build Microservices (20)

Enable rapid service provisioning with cics, microservices and the z/OS Provi...
Enable rapid service provisioning with cics, microservices and the z/OS Provi...Enable rapid service provisioning with cics, microservices and the z/OS Provi...
Enable rapid service provisioning with cics, microservices and the z/OS Provi...
 
Vancouver Microservices Meetup - Kickoff Session
Vancouver Microservices Meetup - Kickoff SessionVancouver Microservices Meetup - Kickoff Session
Vancouver Microservices Meetup - Kickoff Session
 
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
 
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
 
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
 
The Reality of Managing Microservices in Your CD Pipeline
The Reality of Managing Microservices in Your CD PipelineThe Reality of Managing Microservices in Your CD Pipeline
The Reality of Managing Microservices in Your CD Pipeline
 
NGINX, Istio, and the Move to Microservices and Service Mesh
NGINX, Istio, and the Move to Microservices and Service MeshNGINX, Istio, and the Move to Microservices and Service Mesh
NGINX, Istio, and the Move to Microservices and Service Mesh
 
Overview of azure microservices and the impact on integration
Overview of azure microservices and the impact on integrationOverview of azure microservices and the impact on integration
Overview of azure microservices and the impact on integration
 
Cloud Native Middleware Microservices - 10 Lessons Learned
Cloud Native Middleware Microservices - 10 Lessons LearnedCloud Native Middleware Microservices - 10 Lessons Learned
Cloud Native Middleware Microservices - 10 Lessons Learned
 
Evolving your Architecture to MicroServices
Evolving your Architecture to MicroServicesEvolving your Architecture to MicroServices
Evolving your Architecture to MicroServices
 
Fun Times With Microservices
Fun Times With MicroservicesFun Times With Microservices
Fun Times With Microservices
 
Fun Times with Microservices
Fun Times with MicroservicesFun Times with Microservices
Fun Times with Microservices
 
[WSO2 API Day Dallas 2019] Extending Service Mesh with API Management
[WSO2 API Day Dallas 2019] Extending Service Mesh with API Management[WSO2 API Day Dallas 2019] Extending Service Mesh with API Management
[WSO2 API Day Dallas 2019] Extending Service Mesh with API Management
 
3298 microservices and how they relate to esb api and messaging - inter con...
3298   microservices and how they relate to esb api and messaging - inter con...3298   microservices and how they relate to esb api and messaging - inter con...
3298 microservices and how they relate to esb api and messaging - inter con...
 
Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!
 
APIs from the Edge to the Mesh
APIs from the Edge to the MeshAPIs from the Edge to the Mesh
APIs from the Edge to the Mesh
 
Architecting for Scale
Architecting for ScaleArchitecting for Scale
Architecting for Scale
 
[WSO2 Integration Summit Madrid 2019] Emerging Architecture Patterns: API-cen...
[WSO2 Integration Summit Madrid 2019] Emerging Architecture Patterns: API-cen...[WSO2 Integration Summit Madrid 2019] Emerging Architecture Patterns: API-cen...
[WSO2 Integration Summit Madrid 2019] Emerging Architecture Patterns: API-cen...
 
[WSO2 Integration Summit Stuttgart 2019] Emerging Architecture Patterns: API-...
[WSO2 Integration Summit Stuttgart 2019] Emerging Architecture Patterns: API-...[WSO2 Integration Summit Stuttgart 2019] Emerging Architecture Patterns: API-...
[WSO2 Integration Summit Stuttgart 2019] Emerging Architecture Patterns: API-...
 
[WSO2 Integration Summit Paris 2019] Emerging Architecture Patterns API-centr...
[WSO2 Integration Summit Paris 2019] Emerging Architecture Patterns API-centr...[WSO2 Integration Summit Paris 2019] Emerging Architecture Patterns API-centr...
[WSO2 Integration Summit Paris 2019] Emerging Architecture Patterns API-centr...
 

Más de Kai Wähner

Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)Kai Wähner
 
When NOT to use Apache Kafka?
When NOT to use Apache Kafka?When NOT to use Apache Kafka?
When NOT to use Apache Kafka?Kai Wähner
 
Kafka for Live Commerce to Transform the Retail and Shopping Metaverse
Kafka for Live Commerce to Transform the Retail and Shopping MetaverseKafka for Live Commerce to Transform the Retail and Shopping Metaverse
Kafka for Live Commerce to Transform the Retail and Shopping MetaverseKai Wähner
 
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache KafkaThe Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache KafkaKai Wähner
 
Apache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
Apache Kafka vs. Cloud-native iPaaS Integration Platform MiddlewareApache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
Apache Kafka vs. Cloud-native iPaaS Integration Platform MiddlewareKai Wähner
 
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?Kai Wähner
 
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse ArchitectureServerless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse ArchitectureKai Wähner
 
Data Streaming with Apache Kafka in the Defence and Cybersecurity Industry
Data Streaming with Apache Kafka in the Defence and Cybersecurity IndustryData Streaming with Apache Kafka in the Defence and Cybersecurity Industry
Data Streaming with Apache Kafka in the Defence and Cybersecurity IndustryKai Wähner
 
Apache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryApache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryKai Wähner
 
Apache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryApache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryKai Wähner
 
Apache Kafka for Real-time Supply Chain in the Food and Retail Industry
Apache Kafka for Real-time Supply Chainin the Food and Retail IndustryApache Kafka for Real-time Supply Chainin the Food and Retail Industry
Apache Kafka for Real-time Supply Chain in the Food and Retail IndustryKai Wähner
 
Kafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid CloudKafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid CloudKai Wähner
 
Apache Kafka Landscape for Automotive and Manufacturing
Apache Kafka Landscape for Automotive and ManufacturingApache Kafka Landscape for Automotive and Manufacturing
Apache Kafka Landscape for Automotive and ManufacturingKai Wähner
 
Kappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology ComparisonKappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology ComparisonKai Wähner
 
The Top 5 Apache Kafka Use Cases and Architectures in 2022
The Top 5 Apache Kafka Use Cases and Architectures in 2022The Top 5 Apache Kafka Use Cases and Architectures in 2022
The Top 5 Apache Kafka Use Cases and Architectures in 2022Kai Wähner
 
Event Streaming CTO Roundtable for Cloud-native Kafka Architectures
Event Streaming CTO Roundtable for Cloud-native Kafka ArchitecturesEvent Streaming CTO Roundtable for Cloud-native Kafka Architectures
Event Streaming CTO Roundtable for Cloud-native Kafka ArchitecturesKai Wähner
 
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...Kai Wähner
 
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...Kai Wähner
 
Apache Kafka in the Transportation and Logistics
Apache Kafka in the Transportation and LogisticsApache Kafka in the Transportation and Logistics
Apache Kafka in the Transportation and LogisticsKai Wähner
 
Apache Kafka for Cybersecurity and SIEM / SOAR Modernization
Apache Kafka for Cybersecurity and SIEM / SOAR ModernizationApache Kafka for Cybersecurity and SIEM / SOAR Modernization
Apache Kafka for Cybersecurity and SIEM / SOAR ModernizationKai Wähner
 

Más de Kai Wähner (20)

Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
 
When NOT to use Apache Kafka?
When NOT to use Apache Kafka?When NOT to use Apache Kafka?
When NOT to use Apache Kafka?
 
Kafka for Live Commerce to Transform the Retail and Shopping Metaverse
Kafka for Live Commerce to Transform the Retail and Shopping MetaverseKafka for Live Commerce to Transform the Retail and Shopping Metaverse
Kafka for Live Commerce to Transform the Retail and Shopping Metaverse
 
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache KafkaThe Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
 
Apache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
Apache Kafka vs. Cloud-native iPaaS Integration Platform MiddlewareApache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
Apache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
 
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
 
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse ArchitectureServerless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
 
Data Streaming with Apache Kafka in the Defence and Cybersecurity Industry
Data Streaming with Apache Kafka in the Defence and Cybersecurity IndustryData Streaming with Apache Kafka in the Defence and Cybersecurity Industry
Data Streaming with Apache Kafka in the Defence and Cybersecurity Industry
 
Apache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryApache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare Industry
 
Apache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare IndustryApache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare Industry
 
Apache Kafka for Real-time Supply Chain in the Food and Retail Industry
Apache Kafka for Real-time Supply Chainin the Food and Retail IndustryApache Kafka for Real-time Supply Chainin the Food and Retail Industry
Apache Kafka for Real-time Supply Chain in the Food and Retail Industry
 
Kafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid CloudKafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid Cloud
 
Apache Kafka Landscape for Automotive and Manufacturing
Apache Kafka Landscape for Automotive and ManufacturingApache Kafka Landscape for Automotive and Manufacturing
Apache Kafka Landscape for Automotive and Manufacturing
 
Kappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology ComparisonKappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology Comparison
 
The Top 5 Apache Kafka Use Cases and Architectures in 2022
The Top 5 Apache Kafka Use Cases and Architectures in 2022The Top 5 Apache Kafka Use Cases and Architectures in 2022
The Top 5 Apache Kafka Use Cases and Architectures in 2022
 
Event Streaming CTO Roundtable for Cloud-native Kafka Architectures
Event Streaming CTO Roundtable for Cloud-native Kafka ArchitecturesEvent Streaming CTO Roundtable for Cloud-native Kafka Architectures
Event Streaming CTO Roundtable for Cloud-native Kafka Architectures
 
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
 
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
 
Apache Kafka in the Transportation and Logistics
Apache Kafka in the Transportation and LogisticsApache Kafka in the Transportation and Logistics
Apache Kafka in the Transportation and Logistics
 
Apache Kafka for Cybersecurity and SIEM / SOAR Modernization
Apache Kafka for Cybersecurity and SIEM / SOAR ModernizationApache Kafka for Cybersecurity and SIEM / SOAR Modernization
Apache Kafka for Cybersecurity and SIEM / SOAR Modernization
 

Último

How to release an Open Source Dataweave Library
How to release an Open Source Dataweave LibraryHow to release an Open Source Dataweave Library
How to release an Open Source Dataweave Libraryshyamraj55
 
LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0DanBrown980551
 
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTSIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTxtailishbaloch
 
The Importance of Indoor Air Quality (English)
The Importance of Indoor Air Quality (English)The Importance of Indoor Air Quality (English)
The Importance of Indoor Air Quality (English)IES VE
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
 
Stobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through TokenizationStobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through TokenizationStobox
 
Automation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsAutomation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsDianaGray10
 
Novo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4jNovo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4jNeo4j
 
Technical SEO for Improved Accessibility WTS FEST
Technical SEO for Improved Accessibility  WTS FESTTechnical SEO for Improved Accessibility  WTS FEST
Technical SEO for Improved Accessibility WTS FESTBillieHyde
 
2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdfThe Good Food Institute
 
Oracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxOracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxSatishbabu Gunukula
 
How to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxHow to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxKaustubhBhavsar6
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applicationsnooralam814309
 
From the origin to the future of Open Source model and business
From the origin to the future of  Open Source model and businessFrom the origin to the future of  Open Source model and business
From the origin to the future of Open Source model and businessFrancesco Corti
 
UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3DianaGray10
 
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxEmil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxNeo4j
 
March Patch Tuesday
March Patch TuesdayMarch Patch Tuesday
March Patch TuesdayIvanti
 
The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)codyslingerland1
 
Patch notes explaining DISARM Version 1.4 update
Patch notes explaining DISARM Version 1.4 updatePatch notes explaining DISARM Version 1.4 update
Patch notes explaining DISARM Version 1.4 updateadam112203
 
UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4DianaGray10
 

Último (20)

How to release an Open Source Dataweave Library
How to release an Open Source Dataweave LibraryHow to release an Open Source Dataweave Library
How to release an Open Source Dataweave Library
 
LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0
 
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTSIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
 
The Importance of Indoor Air Quality (English)
The Importance of Indoor Air Quality (English)The Importance of Indoor Air Quality (English)
The Importance of Indoor Air Quality (English)
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Stobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through TokenizationStobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
Stobox 4: Revolutionizing Investment in Real-World Assets Through Tokenization
 
Automation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsAutomation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projects
 
Novo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4jNovo Nordisk's journey in developing an open-source application on Neo4j
Novo Nordisk's journey in developing an open-source application on Neo4j
 
Technical SEO for Improved Accessibility WTS FEST
Technical SEO for Improved Accessibility  WTS FESTTechnical SEO for Improved Accessibility  WTS FEST
Technical SEO for Improved Accessibility WTS FEST
 
2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf
 
Oracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxOracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptx
 
How to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxHow to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptx
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applications
 
From the origin to the future of Open Source model and business
From the origin to the future of  Open Source model and businessFrom the origin to the future of  Open Source model and business
From the origin to the future of Open Source model and business
 
UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3
 
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptxEmil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
Emil Eifrem at GraphSummit Copenhagen 2024 - The Art of the Possible.pptx
 
March Patch Tuesday
March Patch TuesdayMarch Patch Tuesday
March Patch Tuesday
 
The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)
 
Patch notes explaining DISARM Version 1.4 update
Patch notes explaining DISARM Version 1.4 updatePatch notes explaining DISARM Version 1.4 update
Patch notes explaining DISARM Version 1.4 update
 
UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4
 

How to Choose the Right Technology, Framework or Tool to Build Microservices

  • 1. How to choose the right Technology, Framework or Tool to Build Microservices Kai Wähner kwaehner@tibco.com @KaiWaehner www.kai-waehner.de Xing / LinkedIn  Please connect!
  • 2. Key Messages – Integration is key for success of Microservices! – Real time event correlation is the game changer! – TCO and Time-to-Market are major aspects for tool selection! “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 3. Agenda – Definition of a Microservice – Architecture Requirements – Concepts for Microservices – Frameworks and Tools – Getting Started “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 4. Agenda – Definition of a Microservice – Architecture Requirements – Concepts for Microservices – Frameworks and Tools – Getting Started “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 5. • Services implementing a limited set of functions • Services developed, deployed and scaled independently Microservices “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 6. Shorter time to results • Scale development and reuse of services • Use the right technology for the job Increased flexibility • Change / improve any Microservice without major disruption on apps or other services Benefits of Microservices “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 7. 7 Mhhh…. Sounds like SOA! “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 8. Microservices clearly specify important differences to SOA (as we see SOA implemented in most enterprises today): • No commitment to a unique technology • Greater flexibility of architecture • Services managed as products, with their own lifecycle • Industrialized deployment • Dumb routes and smart endpoints instead of a heavyweight ESB Sounds like SOA? Avoid a jungle of technologies! Integration still needed somewhere! “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 9. • All of these services require integration. • All of these services and technologies require automation of deployment and configuration. • All of these services require logging and monitoring. • All of these services require hybrid deployment. Challenges of Microservices “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 10. Agenda – Definition of a Microservice – Architecture Requirements – Concepts for Microservices – Frameworks and Tools – Getting Started “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 11. Requirements for a Microservices Architecture ① Service Contracts ② Exposing new and existing Services ③ Discovery of Services ④ Coordination Across Services ⑤ Managing Complex Deployments and their Scalability ⑥ Visibility and Correlation across Services “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 12. Agenda – Definition of a Microservice – Architecture Requirements – Concepts for Microservices – Frameworks and Tools – Getting Started “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 13. 13 Alternatives to Realize Microservices Time to Market Microservice Frameworks Microservice Products Slow Fast Microservice Concepts IncludesIncludes “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 14. Service Standards (OSGi, REST, SOAP) Messaging Standards (JMS, MQTT, AMQP, WebSockets) Continuous Delivery (Build, Deployment) and Elasticity Service Management (Registry, Governance, Documentation) Centralized Monitoring and Analytics (Log Analytics, Event Processing) 14 What Microservice Concepts do you need? Time to Market Microservice Frameworks Microservice Products Slow Fast Microservice Concepts “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 15. Agenda – Definition of a Microservice – Architecture Requirements – Concepts for Microservices – Frameworks and Tools – Getting Started “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 16. 16 Alternatives to Realize Microservices Time to Market Microservice Frameworks Microservice Products Slow Fast Microservice Concepts IncludesIncludes “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 17. Requirements for a Microservices Architecture ① Service Contracts ② Exposing new and existing Services ③ Discovery of Services ④ Coordination Across Services ⑤ Managing Complex Deployments and their Scalability ⑥ Visibility and Correlation across Services “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 18. Requirements for Microservices Architecture #1: Services Contract 18 “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 19. 19 Service Contracts Service provider express the purpose of the Microservice, and its requirements Other developers can easily access this information Service contracts, and the ability for developers to discover them, serve that purpose. “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 20. • Examples: IDL (CORBA), Java Interface, JMS Messages, SOAP, REST, … • In Practice today: – SOAP: Internal, standards-based, XML Schema, easy mappings and transformations, performance no issue (anymore) – REST (i.e. RESTful HTTP without HATEOAS): External, XML or JSON, Good architecture for mobile devices (simplicity, separation of concerns, no state, uniform interface) – Messaging (e.g. WebSockets, MQTT): Good for millions of devices (IoT, sensors) • De facto standard for Microservices as of today: REST • Internet of Things will move Messaging forward! 20 Technologies for (Micro)Service Contracts “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 21. 21 Alternatives to Realize Microservices Time to Market Microservice Frameworks Microservice Products Slow Fast Microservice Concepts IncludesIncludes OSGi WSDL, REST, SWAGGER, XML / JSON Editor, IDE Support … “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 22. 22 Swagger – The de facto Standard for REST “Swagger is a simple yet powerful representation of your RESTful API. With the largest ecosystem of API tooling on the planet, thousands of developers are supporting Swagger in almost every modern programming language and deployment environment. With a Swagger-enabled API, you get interactive documentation, client SDK generation and discoverability.” http://swagger.io/http://restlet.com/blog/2015/04/07/try-your-api-right-away-with-apisparks-built-in-swagger-ui/ “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 23. 23 Live Demo Swagger for REST APIs in Action... “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 24. Requirements for Microservices Architecture #2: Exposing new and existing Microservices “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 25. 25 Services come in various forms Integration Service Monolith application SOA Integration Service Service ServiceService Service API Gateway SaaS Service “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 26. NEW Services – Build a service which uses (i.e. integrates) databases, files, applications, services, … EXISTING Services – Expose existing internal service via REST, SOAP, JMS … – Use external services (SaaS) Does not really matter… Integration is key! 26 NEW vs. EXISTING Services “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 27. Smart endpoints and dumb pipes “When building communication structures between different processes, we've seen many products and approaches that stress putting significant smarts into the communication mechanism itself. A good example of this is the Enterprise Service Bus (ESB), where ESB products often include sophisticated facilities for message routing, choreography, transformation, and applying business rules. The Microservice community favours an alternative approach: smart endpoints and dumb pipes. Applications built from Microservices aim to be as decoupled and as cohesive as possible - they own their own domain logic and act more as filters in the classical Unix sense - receiving a request, applying logic as appropriate and producing a response. These are choreographed using simple RESTish protocols rather than complex protocols such as WS-Choreography or BPEL or orchestration by a central tool. The two protocols used most commonly are HTTP request-response with resource API's and lightweight messaging. The best expression of the first is Be of the web, not behind the web -- Ian Robinson” http://martinfowler.com/articles/microservices.html#SmartEndpointsAndDumbPipes “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 28. Smart endpoints and dumb pipes “When building communication structures between different processes, we've seen many products and approaches that stress putting significant smarts into the communication mechanism itself. A good example of this is the Enterprise Service Bus (ESB), where ESB products often include sophisticated facilities for message routing, choreography, transformation, and applying business rules. The Microservice community favours an alternative approach: smart endpoints and dumb pipes. Applications built from Microservices aim to be as decoupled and as cohesive as possible - they own their own domain logic and act more as filters in the classical Unix sense - receiving a request, applying logic as appropriate and producing a response. These are choreographed using simple RESTish protocols rather than complex protocols such as WS- Choreography or BPEL or orchestration by a central tool. The two protocols used most commonly are HTTP request-response with resource API's and lightweight messaging. The best expression of the first is Be of the web, not behind the web -- Ian Robinson” Agreed! However, be aware that you have to do “ESB tasks” (integration, routing, transformation, etc.) in the service then! Why? It has to be done somewhere! Agree? “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 29. 29 Alternatives to Realize Microservices Time to Market Microservice Frameworks Microservice Products Slow Fast Microservice Concepts IncludesIncludes Frameworks (e.g. Apache CXF) Integration Framework Service Delivery Platforms “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 30. 30 Build new services with frameworks and tools Integration Framework Apache Camel (JVM) Spring Integration (JVM) NServiceBus (.NET) Service Frameworks Java EE => JAX-RS /-WS (Apache CXF) .NET => WCF Python Ruby “you-name-it” Service Delivery Platform (formerly often called ESB) TIBCO BusinessWorks Talend ESB WSO2 ESB “you-name-it” “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 31. 31 Integration Framework - Apache Camel Implement Microservices logic in so called “routes” … 1) from(”rest:serverDummyURL") .to("log:TEST?showAll=true”) .direct(processOrder); from(”jms:myQueue:in") .to("log:TEST?showAll=true"); .direct(processOrder); from("direct:processOrder") .to(”javaBean:orderService?method=process”) .to(“jdbc:myDatabase:myTable?sql=update…”) .to(”jms:queue:order.out"); 2) 3) … and expose it as service, e.g. REST, SOAP or JMS. “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 32. 32 Live Demo Apache Camel in Action... “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 33. Service Delivery Platform – TIBCO BusinessWorks Simple Sophisticated Modeling Multi-op Processes Conversations Event Handlers Zero-code Integration Non-stop Dev-Deploy Visual Debugger Accelerate Time to Results “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 34. Integration as foundation of Microservices  Access any data to use in Microservices  Expose standard transport from Microservices  Assemble new Microservices “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 35. Leverage any technology to create Microservices Abstract complex APIs using: • Standard connectors – File, JDBC, SOAP, REST, JMS, etc. • Application connectors – SaaS (SFDC, Marketo), SAP, Big Data, Mobile, legacy applications, etc. • Plugin development kit • Programming languages – Java, Scala, Ruby, etc.  Onboard new technologies  New channels  New data sources “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 36. 36 Create REST APIs service In Under A Minute  Top-down or bottom-up modeling  Automatic docs and testing web UI “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 37. 37 Live Demo TIBCO BusinessWorks 6 in Action... BusinessWorks “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 38. Requirements for Microservices Architecture #3: Discovery of Services 38 “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 39. The new “Open API” Economy Your Enterprise Closed APIs EDI Web B2B SOA FTP Pre-defined integration points Limited, trusted partners Strictly constrained interactions Enterprise friendly Open APIs Opportunistic access points Many partners, untrusted Encourage new ideas Developer friendly Your Enterprise Partners Innovators Known Parties Consumers Unknown Parties Suppliers Coopetition Employees APIAPI API API API API API API API API API API API API API API API API API API “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 40. 40 Alternatives to Realize Microservices Time to Market Microservice Frameworks Microservice Products Slow Fast Microservice Concepts IncludesIncludes Service Registry Governance API Management “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 41. 41 API Management - JBoss APIMAN http://www.apiman.io “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 42. 42 API Management - KONG http://getkong.org/ “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 43. 43 API Management – WSO2 API Manager http://wso2.com/landing/ppc/api-manager “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 44. • Developer self-service • API Lifecycle • API Monetization API Portal • Security & Access Control • Event Based Policy Mgt. • Federated Internet Scale API Gateway • Reporting / Visualization • SLA’s & KPI’s • Full Auditing API Analytics API Management – TIBCO API Exchange Cloud Based Or On-Premise “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 45. TIBCO API Exchange - Portal The API Portal allows all developer to discover Microservices and their contracts, read documentation, and test the APIs. • Discovery of Services • Service Catalog – SOAP and REST services – Interactive and unstructured docs – Authentication by API Key, OAuth – Create REST proxy from portal • Contracts – Pre-defined or custom QoS – Rate/day, rate/second – Approval workflow (or automatic) – Plans can route to different targets “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 46. TIBCO API Exchange - Gateway Authorize Validate Throttle Route Transform Mediate API Exchange Gateway API Requests Service Calls Enterprise Service Bus ERP MDM DB WMS SOA Event Processing BPM Leverage existing services Gain access control Minimize security risks • Authorization - whose requests • Access control granularity down to service endpoint • Single-edit configuration changes through web user interface • Security standards: LDAP, SAML, OAuth, WSPolicy, etc. • Throttling - when requests are handled • Rate & High-Water Mark, Quota, Time-of-Day, Error-rate/Payload-size, Group Logical, Traffic shaping • Policies and throttles can be extended with declarative rule language in Studio • Routing - where requests are handled • Single-edit configuration through web user interface • In-line transformation through configuration • Orchestration logic can be hot-deployed • By operation, version, size, time of day, etc. • Mediation - how requests are handled • ‘Flow’ logic • Transformation and Validation logic • Caching logic Cache “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 47. API Consumer Understand usage and performance through interactive reporting for both API providers and consumers API Provider Operational Monitoring Auditing Application Performance Usage/Limit Monitoring Debugging Measure and improve application performance Measure and improve on the success of API initiatives TIBCO API Exchange - Analytics API Performance “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 48. 48 Live Demo TIBCO API Exchange in Action... API Exchange “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 49. Requirements for Microservices Architecture #4: Coordination across services 49 “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 50. Smart endpoint, dumb pipes…  Messaging • API is not just exposing a service via SOAP / REST! • JMS, MQTT, AMQP, WebSockets, CoAP, DSS, … • TIBCO FTL – Peer-to-Peer messaging with the power, flexibility and control of a server-based store and forward design – Frees up application developers to focus on message processing by decoupling message distribution from application development  Developer focus on the service and not the transport  Highly scalable transport  Events can be used for advanced logic “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 51. Extending Services to Mobile Applications • eFTL servers provide increased scalability for web and mobile based applications • Mobile clients communicate directly with TIBCO eFTL servers over HTML5 Web-sockets. Native Mobile Application Support – Objective-C (iOS) – Android – JavaScript TIBCO eFTL Server TIBCO eFTL Server TIBCO eFTL Server TCP Transport TIBCO EMS TIBCO Rendezvous TIBCO Messaging Backbone TIBCO FTL  Communication between apps and devices,  Communication from apps and devices to your Microservices  Robustness at the scale of the Internet of Everything “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 52. 52 Coordination across services via NEW services ?! Smart service, dumb pipe (no ESB in the middle)… How to coordinate? “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 53. 53 Alternatives to Realize Microservices Time to Market Microservice Frameworks Microservice Products Slow Fast Microservice Concepts IncludesIncludes Frameworks (e.g. Apache CXF) Integration Framework Service Delivery Platforms “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 54. 54 Apache Camel for Coordination across Services Existing Microservices 1)from(”rest:serverDummyURL") .to("log:TEST?showAll=true”) .direct(processOrder); from(”jms:myQueue:in") .to("log:TEST?showAll=true"); .direct(processOrder); 2) from(”rest:serverRequestURL") .choice() .when(header("foo").isEqualTo("bar")) .to(”rest:serverDummyURL") .when(header("foo").isEqualTo("cheese")) .to(”jms:myQueue:in") .otherwise() .to(”log:errorHandler"); Coordination with another route “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 55. BusinessWorks for Coordination across Services • Apps/business services are composed from Microservices • Some Microservices can be composed to accelerate developments  Graphical design and debug  Stateful or stateless  Service or event driven “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 56. 56 In-Memory Data Grid • Share data and store context in an distributed in-memory data grid – Provides data storage for services • Speed up communication and coordination between Microservices  Provide a common repository for services managing the same business objects  Share change of context / state as events “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 57. 57 In-Memory Data Grid – Market Overview http://blogs.the451group.com/ information_management/2015/03/18/ updated-data-platforms-landscape- map-february-2015/ In-Memory Data Grids “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 58. Integration with TIBCO BusinessWorks TIBCO ActiveMatrix BusinessWorks Plug-in for ActiveSpaces to utilize all the benefits of TIBCO ActiveSpaces without any coding “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 59. Requirements for Microservices Architecture #5: Managing complex deployments and their scalability “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 60. 60 Alternatives to Realize Microservices Time to Market Microservice Frameworks Microservice Products Slow Fast Microservice Concepts IncludesIncludes Build Management Continuous Delivery Flexible Deployment Unified Administration “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 61. 61 Continuous Delivery http://en.wikipedia.org/wiki/Continuous_delivery Benefits • Accelerated Time to Market • Building the Right Product • Improved Productivity and Efficiency • Reliable Releases • Improved Product Quality • Improved Customer Satisfaction Combined with “Cloud” • Private / Public / Hybrid PaaS • Flexible Infrastructure • Elasticity “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 62. 62 Frameworks and Products for Continuous Delivery and DevOps • Build Management – Ant, Maven, Gradle • Continuous Integration – Jenkings, Bamboo • Continuous Delivery – Chef, Puppet, Salt • Deployment (Elastic VMs / Cloud / Containers) – Amazon Web Services, Microsoft Azure, CloudFoundry – VMware, Openstack, Vagrant – Docker, Spring Boot “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 63. TIBCO Silver Fabric • DevOps in the TIBCO Universe – Out-of-the-box support for TIBCO products such as BusinessWorks – Complementary (not XOR!) to build, continuous integration and delivery, cloud, container and VM tools (see last slide)! • Continuously deploy, configure and manage your applications and middleware, on premise or in the cloud. • DevOps – Continuous Integration / Delivery – Configuration Manager for Global Variables – End-to-End Scripting, Automation & Visibility • Manages quality of deployed applications – Ports Management & Elastic Load Balancer – Dashboard & Full Visibility – SLA based auto scaling & elasticity Self Service Administration “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 64. TIBCO TEA: Unified Administration “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 65. #6: Visibility and Correlation across Services Requirements for Microservices Architecture “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 66. The frontiers between digital and physical are blurring
  • 67. The New Era: Fast Data Processing • Events are analyzed and processed in real-time as they arrive. • Decisions are timely, contextual, and based on fresh data. • Decision latency is eliminated, resulting in:  Superior Customer Experience  Operational Excellence  Instant Awareness and Timely Decisions © Copyright 2000-2015 TIBCO Software Inc. Act & Monitor Analyze Store
  • 68. Voltage Temperature Vibration Device history Temporal analytic: “If vibration spike is followed by temp spike then voltage spike [within 12 minutes] then flag high severity alert.” Event Processing (Correlation of Events) “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 69. 69 Alternatives to Realize Microservices Time to Market Microservice Frameworks Microservice Products Slow Fast Microservice Concepts IncludesIncludes Rules Engine Complex Event Processing Streaming Analytics Log Analytics “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 70. 70 The need for a “Bus”? Event correlation is the requirement, where you really need a bus. However, this bus is not an ESB, but an in-memory event server. “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 71. 71 Variety of Frameworks and Tools for Rules and Event Correlation • Open Source – Drools – Esper – WSO2 CEP – … • TIBCO – CEP: BusinessEvents – Streaming Analytics: StreamBase – Live Datamart • Other products – Oracle Event Processing, Software AG’s Apama, IBM InfoSphere Streams, … “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 72. 72 Live Demo TIBCO StreamBase / Live Datamart in Action... StreamBase “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 73. 73 Centralized Monitoring Applications, networks, servers, and devices generate data continuously Growing volumes of big data add costs, complexity, and risk Separate, disparate and even conflicting systems can: • Open security holes • Jeopardize compliance • Disrupt operations • Impede trouble-shooting • “Last year at this time we were processing about 20 Billion logs per day. Today that number is 54 Billion.” –Leading MSSP • “Most of the time a client comes to us with an incident, when we try to gather the logs we discover the customer doesn’t have them and never had a policy in place to store or retain them” • ‘Our problems are not lack of access to data, but understanding them. [Big Data] is very useful…but I have to understand it, and that's the problem." ? Applications, networks, servers, and devices generate data continuously Growing volumes of big data add costs, complexity, and risk Separate, disparate and even conflicting systems can: • Open security holes • Jeopardize compliance • Disrupt operations • Impede trouble-shooting “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 74. 74 Log Analytics in an Enterprise Architecture Messaging: Connectivity, Event Driven ESB: Bus-based, System Integration BPM CEP Analytics Logging: Operational Insight/Intelligence { ServiceOriented LoggingInfra Systems Monitoring { Hardware Infrastructure { COTSSoftware Infrastructure Custom Applications Custom Applications Custom Applications More More “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 75. 75 Log Analytics – Market Overview • ELK Stack (Elasticsearch, Logstash, Kibana) – Open Source frameworks, coding required • TIBCO LogLogic – Part of complete middleware stack, easy configuration and usage, Software or Appliance • Splunk – Market leader, most complete feature list, expensive, complex architecture, turns off if volume limit reached • HP ArcSight – Powerful SIEM solution, very complex configuration • Sumo Logic – Small vendor, focused on log analytics • IBM et al – also offer a product for Log Analytics, of course!  “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 76. 76 LogLogic: Monitor, Analyze and Predict Threats and Opportunities © Copyright 2000-2015 TIBCO Software Inc. • Visual Log Analytics for Any Use Case – User Authentication Activity Tracking – Performance, Firewall, Network Traffic Analysis – Threat Management – Data Enrichment • Self-Service Discovery • Build your own dashboards • Insight into Action – Quickly uncover unknown relationships, trends, and anomalies through ad-hoc query and filtering “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 77. 77 Live Demo TIBCO LogLogic in Action... LogLogic “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 78. Agenda – Definition of a Microservice – Architecture Requirements – Concepts for Microservices – Frameworks and Tools – Getting Started “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 79. 79 How to continue on your Microservices Path? • 1) Choose the Microservice concepts you need! • 2) Think about your architecture requirements! • 3) Evaluate your short list regarding features, usability, time-to-market and TCO! • 4) Try out the tools by yourself within the proof of concept! • 5) Choose the right tool for the right job! “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 80. 80 Best Practices for your Microservices Path No big bang Start small Keep it simple Only if added value Not everywhere Not everything Not just technologies Organizational changes needed “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 81. Did you get the Key Message? “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.
  • 82. Key Messages – Integration is key for success of Microservices! – Real time event correlation is the game changer! – TCO and Time-to-Market are major aspects for tool selection! “How to Build Microservices” by Kai Wähner © Copyright 2000-2015 TIBCO Software Inc.