SlideShare una empresa de Scribd logo
1 de 69
Changing Views
on Integration
from Service Bus
to API Gateway,
Serverless & iPaaS
Changing Views on Integration - AUSOUG Webinar Series
AUSOUG Webinar – 6th May 2020
Lucas Jellema, CTO & Architect AMIS | Conclusion
Changing Views on Integration - AUSOUG Webinar Series
Changing Views on Integration - AUSOUG Webinar Series
Changing Views on Integration - AUSOUG Webinar Series
Changing Views on Integration - AUSOUG Webinar Series
Changing Views on Integration - AUSOUG Webinar Series
Agenda
Changing Views on Integration - AUSOUG Webinar Series
What is integration?
Integration challenges
“Traditional” integration approach
Recents insights and developments
Integration Patterns
Out of the Box
Conclusion
What is integration?
Changing Views on Integration - AUSOUG Webinar Series
What is integration?
System
A
System
B
XX
Simple definition: enabling systems to talk to each other
9
What is integration?
System
A
System
B
Ensure that data is where it is needed when it is needed in the form in which it is needed
10
Integration Sample Scenarios
• Orders in Web Shop need to be distributed to and processed by Order Entry,
Order Picking (and Shipping) and Invoicing
• Measurements from Sensors need to be cleansed, filtered, aggregated
and routed to Monitoring application
• Social media team needs to have access in their content management system to
all posts across all platforms mentioning the company
• Our customers need to be able to track and trace their requests as they are
processed throughout our organization
• Changes in address details for patients need to be applied
in all systems that hold patient records
• The website needs to show to our customers the actual listing of products, reviews,
prices and stock information
• The loyalty points associated with an in-shop purchase have to be processed
instantaneously to allow them to be used by the customer for their next purchase
Data
Access
Integration challenges
12
Integration Challenges
● Monolithic / aging / closed systems
● Disparate data models
● Architectural complexity
● Flexibility and productivity
● Costs substantial and Business Value not so clear
● Heterogeneous ecosystem
● Technical debt
● Bloated projects / overhead
● Visibility / error handling
● Production deployment
● Non-functional Quality of Service
● availability, performance,
scalability, security
13
14
Mobile API, ETL,
IoT, CQRS, SaaS
Enablement, …
“Traditional” integration approach
15
ESB as basic architecture element
16
global internal specific
External Interfaces – Proxy Services
Integration Logic
(Validate Enrich Tranform Route Operate)
Internal Interfaces – Business Interfaces
EnterpriseServiceBus
Application Server
Enterprise Service Bus
Backend
Database
Backend
Alternative
Datastore
Backend
custom App
Backend
Standard App
Some
External
Service
UI
(Web Portal, Mobile)
B2B PartnerService
SaaS
Load balance, En/De-cryption,
VETRO, Monitoring, Analytics,
Throttling, Caching, Authentication,
Authorization, Orchestration,
Circuit Breaking, Exception
Handling & Retries, Logging,
Technology & Application Adapters
& Connectors, Workflow
coordination, Job Scheduling & Mgt
DWH??
Limited and expensive Scalability
1
8
Loadbalancer
ESB 1 ESB 2 ESB 3
Oracle SOA Cloud
Service
Fixed Technologies Set
<XML />
{
„dialect“:“JSON“
}
Caught in a vendor and/or technology Trap
1
9
Limited agility
• Hard to implement Continuous Integration / Continuous Delivery
• Complex infrastructure
• Missing automated testing capabilities
• Single Point Of …
• Monolithic deployment approach
• Monolithic management (scalability, load balance etc.)
• Expert knowledge needed
• Implementation
• Deployment
• Error analysis and resolution
• TCO
Changing Views on Integration - AUSOUG Webinar Series
http://geek-and-poke.com/
Insights and developments
21
The world is getting more complex interesting!
22
New insights, new context, eroded dogmas
23
Increased scale – because of real -time and web scale demands
(introduced by IoT and a further growth of the use of Apps )
Need for speed - real time insights from fast data streams
No/less strict delineation between Enterprise (message based) Integration and ETL/Data Integration
Tighter security requirements (GDPR to name one)
Faster change cycles (Agile, DevOps)
24/7 Operations (no down time or batch | release | maintenance windows)
Scarcity of talent/developers
Is a canonical model/language such a good idea? What about ‘domain/context mapping’
and ‘anti corruption layer’ from domain driven design
New insights, new context, eroded dogmas (2)
24
We have learned to ask: How fresh should data be? How crucial is ACID and instant consistency?
Realization that reusability (service & data) is not the holy grail (one of the fallacies of SOA: SPoF)
Increased usage of (several) standard applications (primarily SaaS)
The advent of cloud (necessity to support hybrid scenarios - across on-premises and cloud
as well as across multi-vendor cloud)
New architecture patterns such as domain driven design, microservices, CQRS,
event sourcing, “dumb pipes, smart end points”
Advances in technology, containers, serverless, REST, API technology – JSON (vs XML), REST (vs SOAP),
containers, serverless, “embedded HTTP server”, industry standards like Apache Kafka
TCO of Middleware Platforms (run/operate & develop/evolve)
Strategic roadmap of middleware vendors: Cloud, Cloud Native & Microservices
Integration patterns
25
Two dimensions of integration
26
● Synchronous (End User) ”integration”
● API Gateway as runtime component for
○ API policy enforcement
○ Request routing
● (Near) Real-time, synchronous interactions
● APIs born from business requirements
○ Who is using the API?
○ How is the API being used?
○ Not so much focus on reusable, generic interfaces
● Use of lightweight, standard protocols
Vertical integration
27
Customer API
CRM Database
Client
Application
VerticalIntegration
API
Gateway
Multi Purpose API
API Gateway
Backend
Database
Backend
Alternative
Datastore
Backend
custom App
Backend
Standard
App
UI B2B Partner
(Internal)
Microservice
Some
External
Service
Single Purpose API
Multi Purpose API
Load balance, Routing,
Monitoring, Analytics,
Throttling, Authentication,
Authorization, Circuit
breaking, controlled
release ( A/B Testing,
Canary Release )…
API first design approach
29
Evolution of ‘vertical integration flow’ implementation
30
Kubernetes
Implemen
tation
Implemen
tation
API Gateway
Implemen
tation
App DB
Implemen
tation
API Gateway
App DB
Application Server
Enterprise
Service Bus
App DB
Serverless
Functions
Implemen
tation
API Gateway
App DB
λ
VerticalIntegration
Real Life Case of Vertical Integration:
Loyalty Card Scan
Stores (PoS)
Siebel DB
OUR DB
OSB
Web
Logic
Camp
aigner
RETEK
PLQ
LINK
JMS
MFT
Siebel DB
Data
Warehouse
Loyalty X
Siebel
ODI
Golden
Gate
Retail Chain - on
premises infrastructure
Primary Region UK
(secondary) Disaster Failover
Region Germany
OSBOSB
100sK Card Scans per day;
card scan is transaction;
response time < 800 ms
OSB
Real Life Case of Vertical Integration:
Loyalty Card Scan
Stores (PoS)
Siebel DB
OUR DB
OSB
Web
Logic
Camp
aigner
RETEK
PLQ
LINK
JMS
MFT
Siebel DB
Data
Warehouse
Loyalty X
Siebel
ODI
Golden
Gate
Retail Chain - on
premises infrastructure
Primary Region UK
(secondary) Disaster Failover
Region Germany
100sK Card Scans per day;
card scan is transaction;
response time < 800 ms
API Gateway
Card
Scan
Real Life Case of Vertical Integration:
Loyalty Card Scan
Stores (PoS)
Siebel DB
OUR DB
OSB
Web
Logic
Camp
aigner
RETEK
PLQ
LINK
JMS
MFT
Siebel DB
Data
Warehouse
Loyalty X
Siebel
ODI
Golden
Gate
Retail Chain - on
premises infrastructure
Primary Region UK
(secondary) Disaster Failover
Region Germany
100sK Card Scans per day;
card scan is transaction;
response time < 800 ms
API Gateway
Kubernetes
Card
Scan
Car
d
Sca
n
Car
d
Sca
n
Car
d
Sca
n
Car
d
Sca
n
Horizontal integration
● Classic System2System integration
● Eventual
● Background, Asynchronous interaction patterns
● Batch processing, increasingly Straight Through Processing (STP)
● High volume, complex scheduling and orchestration
● Technical interfaces, heavy-duty, proprietary protocols
● Evolving Insights: relaxed freshness and consistency demands, data
replication
● Changing context: cloud & hybrid, “dumb pipes, smart endpoints”, Standard
Apps & SaaS evolution, agile (change, deploy, scale, pay)
System
A
System
B
Horizontal integration
3
5
Backend
Database
Backend
custom App
Backend
Standard App
SaaS
(periodic) data synchronization, replication
Fulfill synchronous request or command
IoT
Event driven, asynchronous notification
Execute workflow (across multiple systems & people?)
Technology & Application Adapters & Connectors,
Workflow coordination, Event Bus, Exception
Handling, Job Scheduling & Mgt, Transformation,
Routing, Monitoring, Streaming Analysis,
Authentication,
API
Gateway
µ
Challenges with Horizontal Integration
● Handle requirements for speed, consistency, volume & [global] distribution
● Detect Change
● Extract Data
● Publish Change
● Transport
○ deal with limited connectivity,
temporary unavailability
● Convert/Transform
● Apply
● Monitor
● Handle exceptions
● Enforce constraints & authorization
Source
System
Destination
Detect changes
Extract Data
Transport Data
Convert Data
Apply Data
Spot and Handle
Errors
Governance &
Evolution
Enforce Constraints &
Authorization
Decoupling Queue
(Cloud) Adapters & iPaaS platforms
To connect, detect & extract (from source) and connect & apply (to sink)
Online Meetup Introducing Apache Kafka - Part Two of Three
Debezium
Integration and Integration?
Changing Views on Integration - AUSOUG Webinar Series
Evolved from Oracle Service
Bus and SOA Suite
Evolved from Oracle Data
Integrator (ODI) and GoldenGate
Data Pipeline is special type of Horizontal Integration
A.S. Watson - Integration Architecture Future
Raw/
Operational
Data Sources
Data
Warehouse
Data Lake
Ingestion
Data
Wrangling
“Data Mart”
single purpose
data set
3rd party data
sources
algorithms
Machine
Learning Model
Dashboard, Notification &
Alert Report, Visualization,
Gamification, Data Explorer
Business insight: what,
when, who and why
Machine
Learning
Deploy &
Leverage
Business
Intelligence
Master Data Management, Meta-Data Management, Data Governance
Data Access, Authorization, Privacy
“Data Mart”
single purpose
data set
“Data Mart”
single purpose
data set
“Data Mart”
single purpose
data set
Internal and
Public APIs
Data
Services
Hot Flow of Real Time Streaming Data
The Third Dimension
Both Horizontal and Vertical Integration
are pre-determined
• end-to-end chains from specified
source(s) to a designated target
• triggered by synchronous requests and
time events (batch)
Changing Views on Integration - AUSOUG Webinar Series
Events aka Messages
Producers
Consumers
Event Hub
Independent intermediary
Robust, Scalable, Fast,
History Retention
Open
Online Meetup Introducing Apache Kafka - Part One of Three
Multi: multiple publishers to same topic,
multiple subscribers on same topic (or none);
Decoupled: publishers to not know about
consumers and vice versa; consumers can
receive messages from when they were off line
Event-Driven Integration
42
Instead of the API definition and
runtime endpoint, Event Consumers
need the Message definition, the
Topic name and the endpoint of the
Event Store (aka Event Hub)
Optional: forwarding endpoint of
consumer when Pub/Sub with Push
Changing Views on Integration - AUSOUG Webinar Series
Out of the box
Ahead of Time Integration & CQRS
Event Sourcing
Collective Data Set
Utility Company looking for Performance, Scalability and
Availability in their core data sets
Online Meetup Introducing Apache Kafka - Part Two of Three
CRM
Meter Readings
batch
Invoicing
Billing
Marketing
Campaigns
Enterprise
Service
Bus
Utility Company looking for Performance, Scalability and
Availability in their core data sets
Online Meetup Introducing Apache Kafka - Part Two of Three
CRM
Meter Readings
batch
Invoicing
Billing
Marketing
Campaigns
Customer
Portal
Enterprise
Service
Bus
Utility Company looking for Performance, Scalability and
Availability in their core data sets
Online Meetup Introducing Apache Kafka - Part Two of Three
CRM
Meter Readings
batch
Invoicing
Billing
Marketing
Campaigns
Customer
Portal
Load on Core Systems &
effect on Performance
Availability Core Systems,
Sizing & Cost &
Complexity ESB
Utility Company looking for Performance, Scalability and
Availability in their core data sets
Online Meetup Introducing Apache Kafka - Part Two of Three
CRM
Meter Readings
Invoicing
Billing
Marketing
Campaigns
CRM
Cache DB
Meter
Readings
Cache DB
Customer
Portal
Utility Company looking for Performance, Scalability and
Availability in their core data sets
Online Meetup Introducing Apache Kafka - Part Two of Three
CRM
Meter Readings
Invoicing
Billing
Marketing
Campaigns
CRM
Cache DB
Meter
Readings
Cache DB
Customer
Portal
Practical Challenges
• Publish all [fine grained]
change events from
sources
• Event schema evolution
• Lag in Cache Databases
• “eventual consistency”
• Differences between sources
and cache databases
• Initial creation of Cache Databases
• General Scale and Incidental event storm
• Business and Mission Critical availability
• Data Authorization
• Logic enforced in source (applications)
• GDPR
Online Meetup Introducing Apache Kafka - Part Two of Three
CRM
Meter Readings
Invoicing
Billing
Marketing
Campaigns
CRM Cache
DB
Meter Readings
Cache DB
Customer
Portal
JIT vs AOT
50
CQRS => Specialized Query Stores
Cater for different (read) Data Usage Scenarios
Different in:
● Why
● What – grain, aggregation, breadth, type of and variation in queries
● How – format, language, accuracy and freshness, consistency
● When – frequency, time of day | week | month, 24/7
● Where – latency, band width, off line
● Who – scale, different roles & user groups
5
2
CQRS => Optimized Data Set for Special Use Case
● Shape & Format
● Right Grained (aggregation, consolidation)
● Filtered
● Enriched (from multiple sources)
● Location
● Time (refreshed at the right time)
● Search Options
● BASE (eventually – when? – consistent)
● Authorization
● GDPR
5
3
C Q
BFF API
Frontend
Online Meetup Introducing Apache Kafka - Part Two of Three
CQRS: A small step for mankind but a giant leap for [IT] architects
Typical CQRS Architecture
Online Meetup Introducing Apache Kafka - Part Two of Three
Event Platform
Source systems
Poll
Consume
Detect &
Retrieve
Change
Change Reporters Distributed Change Event Hub Change Projectors Destination systems
Transform
& Apply
(re)Calculate
& Record
Convert,
Translate,
StoreEvent Schema
Governance
Monitoring & Error Handling
Event Sourcing
56
Utility Company: Rebuild Cache Database
Online Meetup Introducing Apache Kafka - Part Two of Three
CRM
Meter Readings
CRM
Cache DB
Meter
Readings
Cache DB
Utility Company: Rebuild Cache Database
From Event Store
Online Meetup Introducing Apache Kafka - Part Two of Three
CRM
Cache DB
Meter
Readings
Cache DB
Event Sourcing Driving CQRS
Online Meetup Introducing Apache Kafka - Part Two of Three
Events Event Store
Current State
accountId:
123
amount: 10
Owner: Jane Doe
Event Sourcing Driving CQRS
Online Meetup Introducing Apache Kafka - Part Two of Three
Events Event Store
Current State
Other State
Aggregate
Event Sourcing
• Event Store is immutable – append-only log of domain state transitions
• It is the truth about data – everything else is derived
• Replay events
• to (re)construct a representation of the current state (aggregate)
• up to a specific time to recreate moments in time
• in Test environment to investigate an issue
• on a remote location to create mirror & share state across boundaries
• produce a fine grained audit trail
• Challenges
• Time required to reconstruct state
• Grain of aggregates / definition of domain events
Online Meetup Introducing Apache Kafka - Part Two of Three
Collective Data Set
62
Data Sharing Ecosystems
• Multiple independent
organizations
• Mutually benefit from
having access to
the same data
at the same time
• Share data & Have access to data with minimum of overhead and with equality among the
ecosystem partners
• Partners are on different network domains, physical locations, technology stacks, …
• New Partners can join
• Partners can leave
• Consensus on what constitutes correct data
Pragmatic CQRS - Digital Xchange
Collective Dataset
Pragmatic CQRS - Digital Xchange
Company
A
Company
C
Company
D
Company
E
Company
F
Collective
Dataset
Company
B
Collective Dataset
Pragmatic CQRS - Digital Xchange
Company
A
Company
C
Company
D
Company
E
Company
F Central
Database
Enterprise
Service Bus
Canonical SOAP WS/
REST API for Sending
Inserts/Updates/Deletes
and for Requesting
current data
Just In Time Integration
Company
B
Collective Dataset = Collective Data Change Events
Pragmatic CQRS - Digital Xchange
Company
A
Company
C
Company
D
Company
E
Company
F
Central
Event
Platform Interfaces for Publishing
and Consuming Events
Note: events can be
consumed
asynchronously
Ahead of Time Integration
Company
B
Collective Dataset => Collective Data Store
Pragmatic CQRS - Digital Xchange
Company
A
Company
C
Company
D
Company
E
Company
F
Ahead of Time
Integration
Company
B
Conclusion
68
Key Takeaways
• Integration is as relevant as ever – probably more so
• API, microservice, Data Pipeline, Streaming Data (fast & furious), Hybrid
Cloud (& on prem), IoT (physical and virtual), B2B, Big Data, SaaS
• The one-size-fits-all approach based on Enterprise Service Bus is replaced
• Three main integration styles (Vertical, Horizontal, Event-Driven)
• With fitting Patterns and Tools (Dumb Pipes/Smart Endpoints, microservices,
API Gateway, Serverless, Message Queue, Adapters & Connectors, … )
• Leveraging cloud technology
• Out of the Box
• Ahead of Time Integration (CQRS), Collective Data Set, Event Sourcing
• Asynchronous is the preferred communication style
• Decoupling is crucial for flexibility, availability (not brittle), scalability,
distributability (“social distancing” for systems and services)
Thank you for your attention
I hope this was useful
Changing Views on Integration - AUSOUG Webinar Series
lucas.jellema@amis.nl | technology.amis.nl | @lucasjellema | lucas-jellema

Más contenido relacionado

La actualidad más candente

Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
Lucas Jellema
 
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
VMware Tanzu
 

La actualidad más candente (20)

Integration in the Cloud
Integration in the CloudIntegration in the Cloud
Integration in the Cloud
 
Con3036 soaring-through-the-clouds-oow2016-160920214845
Con3036 soaring-through-the-clouds-oow2016-160920214845Con3036 soaring-through-the-clouds-oow2016-160920214845
Con3036 soaring-through-the-clouds-oow2016-160920214845
 
Introduction to Java Cloud Service
Introduction to Java Cloud ServiceIntroduction to Java Cloud Service
Introduction to Java Cloud Service
 
B3 getting started_with_cloud_native_development
B3 getting started_with_cloud_native_developmentB3 getting started_with_cloud_native_development
B3 getting started_with_cloud_native_development
 
Blockchain, Integration, Serverless, Microservices - OOW / Code One 2018 Review
Blockchain, Integration, Serverless, Microservices - OOW / Code One 2018 ReviewBlockchain, Integration, Serverless, Microservices - OOW / Code One 2018 Review
Blockchain, Integration, Serverless, Microservices - OOW / Code One 2018 Review
 
01 oracle application integration overview
01 oracle application integration overview01 oracle application integration overview
01 oracle application integration overview
 
REST - Why, When and How? at AMIS25
REST - Why, When and How? at AMIS25REST - Why, When and How? at AMIS25
REST - Why, When and How? at AMIS25
 
Systems on the Edge—Your Stepping Stones into Oracle Public Cloud and the Paa...
Systems on the Edge—Your Stepping Stones into Oracle Public Cloud and the Paa...Systems on the Edge—Your Stepping Stones into Oracle Public Cloud and the Paa...
Systems on the Edge—Your Stepping Stones into Oracle Public Cloud and the Paa...
 
AppSphere 15 - Containers and Microservices Create New Performance Challenges
AppSphere 15 - Containers and Microservices Create New Performance ChallengesAppSphere 15 - Containers and Microservices Create New Performance Challenges
AppSphere 15 - Containers and Microservices Create New Performance Challenges
 
2016 06 - design your api management strategy - axway - Api Management
2016 06 - design your api management strategy - axway - Api Management2016 06 - design your api management strategy - axway - Api Management
2016 06 - design your api management strategy - axway - Api Management
 
Building Highly Scalable and Flexible SaaS Solutions
Building Highly Scalable and Flexible SaaS SolutionsBuilding Highly Scalable and Flexible SaaS Solutions
Building Highly Scalable and Flexible SaaS Solutions
 
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
 
Pci multitenancy exalogic at AMIS25
Pci multitenancy exalogic at AMIS25Pci multitenancy exalogic at AMIS25
Pci multitenancy exalogic at AMIS25
 
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
 
MySQL day Dublin - OCI & Application Development
MySQL day Dublin - OCI & Application DevelopmentMySQL day Dublin - OCI & Application Development
MySQL day Dublin - OCI & Application Development
 
Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...
Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...
Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...
 
Red Hat Container Strategy
Red Hat Container StrategyRed Hat Container Strategy
Red Hat Container Strategy
 
Cache-Aside Cloud Design Pattern
Cache-Aside Cloud Design PatternCache-Aside Cloud Design Pattern
Cache-Aside Cloud Design Pattern
 
How does the Cloud Foundry Diego Project Run at Scale, and Updates on .NET Su...
How does the Cloud Foundry Diego Project Run at Scale, and Updates on .NET Su...How does the Cloud Foundry Diego Project Run at Scale, and Updates on .NET Su...
How does the Cloud Foundry Diego Project Run at Scale, and Updates on .NET Su...
 
The eBay Architecture: Striking a Balance between Site Stability, Feature Ve...
The eBay Architecture:  Striking a Balance between Site Stability, Feature Ve...The eBay Architecture:  Striking a Balance between Site Stability, Feature Ve...
The eBay Architecture: Striking a Balance between Site Stability, Feature Ve...
 

Similar a Changing Views on Integration (AUSOUG Webinar Series, May 2020)

Azure Overview Csco
Azure Overview CscoAzure Overview Csco
Azure Overview Csco
rajramab
 
adopt_soa.94145841
adopt_soa.94145841adopt_soa.94145841
adopt_soa.94145841
ypai
 

Similar a Changing Views on Integration (AUSOUG Webinar Series, May 2020) (20)

Microservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SREMicroservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SRE
 
Azure Overview Csco
Azure Overview CscoAzure Overview Csco
Azure Overview Csco
 
MicroServices-Part-1.pdf
MicroServices-Part-1.pdfMicroServices-Part-1.pdf
MicroServices-Part-1.pdf
 
ScaleFocus Telco expertise
ScaleFocus Telco expertiseScaleFocus Telco expertise
ScaleFocus Telco expertise
 
Dev ops
Dev opsDev ops
Dev ops
 
¿Cómo modernizar una arquitectura de TI con la virtualización de datos?
¿Cómo modernizar una arquitectura de TI con la virtualización de datos?¿Cómo modernizar una arquitectura de TI con la virtualización de datos?
¿Cómo modernizar una arquitectura de TI con la virtualización de datos?
 
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
 
The power of orchestration - Inside Cisco IT - DC Cloud from IaaS to Fast IT
The power of orchestration - Inside Cisco IT - DC Cloud from IaaS to Fast ITThe power of orchestration - Inside Cisco IT - DC Cloud from IaaS to Fast IT
The power of orchestration - Inside Cisco IT - DC Cloud from IaaS to Fast IT
 
IBM INTEGRATION BUS (IIB V10)—DATA ROUTING AND TRANSFORMATION
IBM INTEGRATION BUS (IIB V10)—DATA ROUTING AND TRANSFORMATIONIBM INTEGRATION BUS (IIB V10)—DATA ROUTING AND TRANSFORMATION
IBM INTEGRATION BUS (IIB V10)—DATA ROUTING AND TRANSFORMATION
 
Confluent Partner Tech Talk with Reply
Confluent Partner Tech Talk with ReplyConfluent Partner Tech Talk with Reply
Confluent Partner Tech Talk with Reply
 
Microservices Patterns with GoldenGate
Microservices Patterns with GoldenGateMicroservices Patterns with GoldenGate
Microservices Patterns with GoldenGate
 
Combining ERP, Public Cloud and Cybersecurity
Combining ERP, Public Cloud and CybersecurityCombining ERP, Public Cloud and Cybersecurity
Combining ERP, Public Cloud and Cybersecurity
 
adopt_soa.94145841
adopt_soa.94145841adopt_soa.94145841
adopt_soa.94145841
 
성공적인 서비스로의 플랫폼 선택
성공적인 서비스로의 플랫폼 선택성공적인 서비스로의 플랫폼 선택
성공적인 서비스로의 플랫폼 선택
 
Data Services and the Modern Data Ecosystem (ASEAN)
Data Services and the Modern Data Ecosystem (ASEAN)Data Services and the Modern Data Ecosystem (ASEAN)
Data Services and the Modern Data Ecosystem (ASEAN)
 
MuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP IntegrationMuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP Integration
 
Technology Overview
Technology OverviewTechnology Overview
Technology Overview
 
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
 
Digital Reinvention by NRB
Digital Reinvention by NRBDigital Reinvention by NRB
Digital Reinvention by NRB
 
DEVNET-1166 Open SDN Controller APIs
DEVNET-1166	Open SDN Controller APIsDEVNET-1166	Open SDN Controller APIs
DEVNET-1166 Open SDN Controller APIs
 

Más de Lucas Jellema

Introduction to web application development with Vue (for absolute beginners)...
Introduction to web application development with Vue (for absolute beginners)...Introduction to web application development with Vue (for absolute beginners)...
Introduction to web application development with Vue (for absolute beginners)...
Lucas Jellema
 
Help me move away from Oracle - or not?! (Oracle Community Tour EMEA - LVOUG...
Help me move away from Oracle - or not?!  (Oracle Community Tour EMEA - LVOUG...Help me move away from Oracle - or not?!  (Oracle Community Tour EMEA - LVOUG...
Help me move away from Oracle - or not?! (Oracle Community Tour EMEA - LVOUG...
Lucas Jellema
 
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
Lucas Jellema
 
Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...
Lucas Jellema
 
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
Lucas Jellema
 
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
Lucas Jellema
 
Cloud Native Application Development - build fast, low TCO, scalable & agile ...
Cloud Native Application Development - build fast, low TCO, scalable & agile ...Cloud Native Application Development - build fast, low TCO, scalable & agile ...
Cloud Native Application Development - build fast, low TCO, scalable & agile ...
Lucas Jellema
 

Más de Lucas Jellema (20)

Introduction to web application development with Vue (for absolute beginners)...
Introduction to web application development with Vue (for absolute beginners)...Introduction to web application development with Vue (for absolute beginners)...
Introduction to web application development with Vue (for absolute beginners)...
 
Making the Shift Left - Bringing Ops to Dev before bringing applications to p...
Making the Shift Left - Bringing Ops to Dev before bringing applications to p...Making the Shift Left - Bringing Ops to Dev before bringing applications to p...
Making the Shift Left - Bringing Ops to Dev before bringing applications to p...
 
Lightweight coding in powerful Cloud Development Environments (DigitalXchange...
Lightweight coding in powerful Cloud Development Environments (DigitalXchange...Lightweight coding in powerful Cloud Development Environments (DigitalXchange...
Lightweight coding in powerful Cloud Development Environments (DigitalXchange...
 
Apache Superset - open source data exploration and visualization (Conclusion ...
Apache Superset - open source data exploration and visualization (Conclusion ...Apache Superset - open source data exploration and visualization (Conclusion ...
Apache Superset - open source data exploration and visualization (Conclusion ...
 
CONNECTING THE REAL WORLD TO ENTERPRISE IT – HOW IoT DRIVES OUR ENERGY TRANSI...
CONNECTING THE REAL WORLD TO ENTERPRISE IT – HOW IoT DRIVES OUR ENERGY TRANSI...CONNECTING THE REAL WORLD TO ENTERPRISE IT – HOW IoT DRIVES OUR ENERGY TRANSI...
CONNECTING THE REAL WORLD TO ENTERPRISE IT – HOW IoT DRIVES OUR ENERGY TRANSI...
 
Help me move away from Oracle - or not?! (Oracle Community Tour EMEA - LVOUG...
Help me move away from Oracle - or not?!  (Oracle Community Tour EMEA - LVOUG...Help me move away from Oracle - or not?!  (Oracle Community Tour EMEA - LVOUG...
Help me move away from Oracle - or not?! (Oracle Community Tour EMEA - LVOUG...
 
Op je vingers tellen... tot 1000!
Op je vingers tellen... tot 1000!Op je vingers tellen... tot 1000!
Op je vingers tellen... tot 1000!
 
IoT - from prototype to enterprise platform (DigitalXchange 2022)
IoT - from prototype to enterprise platform (DigitalXchange 2022)IoT - from prototype to enterprise platform (DigitalXchange 2022)
IoT - from prototype to enterprise platform (DigitalXchange 2022)
 
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
 
Steampipe - use SQL to retrieve data from cloud, platforms and files (Code Ca...
Steampipe - use SQL to retrieve data from cloud, platforms and files (Code Ca...Steampipe - use SQL to retrieve data from cloud, platforms and files (Code Ca...
Steampipe - use SQL to retrieve data from cloud, platforms and files (Code Ca...
 
Automation of Software Engineering with OCI DevOps Build and Deployment Pipel...
Automation of Software Engineering with OCI DevOps Build and Deployment Pipel...Automation of Software Engineering with OCI DevOps Build and Deployment Pipel...
Automation of Software Engineering with OCI DevOps Build and Deployment Pipel...
 
Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...
 
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
 
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
 
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
 
6Reinventing Oracle Systems in a Cloudy World (RMOUG Trainingdays, February 2...
6Reinventing Oracle Systems in a Cloudy World (RMOUG Trainingdays, February 2...6Reinventing Oracle Systems in a Cloudy World (RMOUG Trainingdays, February 2...
6Reinventing Oracle Systems in a Cloudy World (RMOUG Trainingdays, February 2...
 
Help me move away from Oracle! (RMOUG Training Days 2022, February 2022)
Help me move away from Oracle! (RMOUG Training Days 2022, February 2022)Help me move away from Oracle! (RMOUG Training Days 2022, February 2022)
Help me move away from Oracle! (RMOUG Training Days 2022, February 2022)
 
Tech Talks 101 - DevOps (jan 2022)
Tech Talks 101 - DevOps (jan 2022)Tech Talks 101 - DevOps (jan 2022)
Tech Talks 101 - DevOps (jan 2022)
 
Conclusion Code Cafe - Microcks for Mocking and Testing Async APIs (January 2...
Conclusion Code Cafe - Microcks for Mocking and Testing Async APIs (January 2...Conclusion Code Cafe - Microcks for Mocking and Testing Async APIs (January 2...
Conclusion Code Cafe - Microcks for Mocking and Testing Async APIs (January 2...
 
Cloud Native Application Development - build fast, low TCO, scalable & agile ...
Cloud Native Application Development - build fast, low TCO, scalable & agile ...Cloud Native Application Development - build fast, low TCO, scalable & agile ...
Cloud Native Application Development - build fast, low TCO, scalable & agile ...
 

Último

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Último (20)

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 

Changing Views on Integration (AUSOUG Webinar Series, May 2020)

  • 1. Changing Views on Integration from Service Bus to API Gateway, Serverless & iPaaS Changing Views on Integration - AUSOUG Webinar Series AUSOUG Webinar – 6th May 2020 Lucas Jellema, CTO & Architect AMIS | Conclusion
  • 2. Changing Views on Integration - AUSOUG Webinar Series
  • 3. Changing Views on Integration - AUSOUG Webinar Series
  • 4. Changing Views on Integration - AUSOUG Webinar Series
  • 5. Changing Views on Integration - AUSOUG Webinar Series
  • 6. Changing Views on Integration - AUSOUG Webinar Series
  • 7. Agenda Changing Views on Integration - AUSOUG Webinar Series What is integration? Integration challenges “Traditional” integration approach Recents insights and developments Integration Patterns Out of the Box Conclusion
  • 8. What is integration? Changing Views on Integration - AUSOUG Webinar Series
  • 9. What is integration? System A System B XX Simple definition: enabling systems to talk to each other 9
  • 10. What is integration? System A System B Ensure that data is where it is needed when it is needed in the form in which it is needed 10
  • 11. Integration Sample Scenarios • Orders in Web Shop need to be distributed to and processed by Order Entry, Order Picking (and Shipping) and Invoicing • Measurements from Sensors need to be cleansed, filtered, aggregated and routed to Monitoring application • Social media team needs to have access in their content management system to all posts across all platforms mentioning the company • Our customers need to be able to track and trace their requests as they are processed throughout our organization • Changes in address details for patients need to be applied in all systems that hold patient records • The website needs to show to our customers the actual listing of products, reviews, prices and stock information • The loyalty points associated with an in-shop purchase have to be processed instantaneously to allow them to be used by the customer for their next purchase Data Access
  • 13. Integration Challenges ● Monolithic / aging / closed systems ● Disparate data models ● Architectural complexity ● Flexibility and productivity ● Costs substantial and Business Value not so clear ● Heterogeneous ecosystem ● Technical debt ● Bloated projects / overhead ● Visibility / error handling ● Production deployment ● Non-functional Quality of Service ● availability, performance, scalability, security 13
  • 14. 14 Mobile API, ETL, IoT, CQRS, SaaS Enablement, …
  • 16. ESB as basic architecture element 16 global internal specific External Interfaces – Proxy Services Integration Logic (Validate Enrich Tranform Route Operate) Internal Interfaces – Business Interfaces EnterpriseServiceBus
  • 17. Application Server Enterprise Service Bus Backend Database Backend Alternative Datastore Backend custom App Backend Standard App Some External Service UI (Web Portal, Mobile) B2B PartnerService SaaS Load balance, En/De-cryption, VETRO, Monitoring, Analytics, Throttling, Caching, Authentication, Authorization, Orchestration, Circuit Breaking, Exception Handling & Retries, Logging, Technology & Application Adapters & Connectors, Workflow coordination, Job Scheduling & Mgt DWH??
  • 18. Limited and expensive Scalability 1 8 Loadbalancer ESB 1 ESB 2 ESB 3
  • 19. Oracle SOA Cloud Service Fixed Technologies Set <XML /> { „dialect“:“JSON“ } Caught in a vendor and/or technology Trap 1 9
  • 20. Limited agility • Hard to implement Continuous Integration / Continuous Delivery • Complex infrastructure • Missing automated testing capabilities • Single Point Of … • Monolithic deployment approach • Monolithic management (scalability, load balance etc.) • Expert knowledge needed • Implementation • Deployment • Error analysis and resolution • TCO Changing Views on Integration - AUSOUG Webinar Series http://geek-and-poke.com/
  • 22. The world is getting more complex interesting! 22
  • 23. New insights, new context, eroded dogmas 23 Increased scale – because of real -time and web scale demands (introduced by IoT and a further growth of the use of Apps ) Need for speed - real time insights from fast data streams No/less strict delineation between Enterprise (message based) Integration and ETL/Data Integration Tighter security requirements (GDPR to name one) Faster change cycles (Agile, DevOps) 24/7 Operations (no down time or batch | release | maintenance windows) Scarcity of talent/developers Is a canonical model/language such a good idea? What about ‘domain/context mapping’ and ‘anti corruption layer’ from domain driven design
  • 24. New insights, new context, eroded dogmas (2) 24 We have learned to ask: How fresh should data be? How crucial is ACID and instant consistency? Realization that reusability (service & data) is not the holy grail (one of the fallacies of SOA: SPoF) Increased usage of (several) standard applications (primarily SaaS) The advent of cloud (necessity to support hybrid scenarios - across on-premises and cloud as well as across multi-vendor cloud) New architecture patterns such as domain driven design, microservices, CQRS, event sourcing, “dumb pipes, smart end points” Advances in technology, containers, serverless, REST, API technology – JSON (vs XML), REST (vs SOAP), containers, serverless, “embedded HTTP server”, industry standards like Apache Kafka TCO of Middleware Platforms (run/operate & develop/evolve) Strategic roadmap of middleware vendors: Cloud, Cloud Native & Microservices
  • 26. Two dimensions of integration 26
  • 27. ● Synchronous (End User) ”integration” ● API Gateway as runtime component for ○ API policy enforcement ○ Request routing ● (Near) Real-time, synchronous interactions ● APIs born from business requirements ○ Who is using the API? ○ How is the API being used? ○ Not so much focus on reusable, generic interfaces ● Use of lightweight, standard protocols Vertical integration 27 Customer API CRM Database Client Application VerticalIntegration API Gateway
  • 28. Multi Purpose API API Gateway Backend Database Backend Alternative Datastore Backend custom App Backend Standard App UI B2B Partner (Internal) Microservice Some External Service Single Purpose API Multi Purpose API Load balance, Routing, Monitoring, Analytics, Throttling, Authentication, Authorization, Circuit breaking, controlled release ( A/B Testing, Canary Release )…
  • 29. API first design approach 29
  • 30. Evolution of ‘vertical integration flow’ implementation 30 Kubernetes Implemen tation Implemen tation API Gateway Implemen tation App DB Implemen tation API Gateway App DB Application Server Enterprise Service Bus App DB Serverless Functions Implemen tation API Gateway App DB λ VerticalIntegration
  • 31. Real Life Case of Vertical Integration: Loyalty Card Scan Stores (PoS) Siebel DB OUR DB OSB Web Logic Camp aigner RETEK PLQ LINK JMS MFT Siebel DB Data Warehouse Loyalty X Siebel ODI Golden Gate Retail Chain - on premises infrastructure Primary Region UK (secondary) Disaster Failover Region Germany OSBOSB 100sK Card Scans per day; card scan is transaction; response time < 800 ms OSB
  • 32. Real Life Case of Vertical Integration: Loyalty Card Scan Stores (PoS) Siebel DB OUR DB OSB Web Logic Camp aigner RETEK PLQ LINK JMS MFT Siebel DB Data Warehouse Loyalty X Siebel ODI Golden Gate Retail Chain - on premises infrastructure Primary Region UK (secondary) Disaster Failover Region Germany 100sK Card Scans per day; card scan is transaction; response time < 800 ms API Gateway Card Scan
  • 33. Real Life Case of Vertical Integration: Loyalty Card Scan Stores (PoS) Siebel DB OUR DB OSB Web Logic Camp aigner RETEK PLQ LINK JMS MFT Siebel DB Data Warehouse Loyalty X Siebel ODI Golden Gate Retail Chain - on premises infrastructure Primary Region UK (secondary) Disaster Failover Region Germany 100sK Card Scans per day; card scan is transaction; response time < 800 ms API Gateway Kubernetes Card Scan Car d Sca n Car d Sca n Car d Sca n Car d Sca n
  • 34. Horizontal integration ● Classic System2System integration ● Eventual ● Background, Asynchronous interaction patterns ● Batch processing, increasingly Straight Through Processing (STP) ● High volume, complex scheduling and orchestration ● Technical interfaces, heavy-duty, proprietary protocols ● Evolving Insights: relaxed freshness and consistency demands, data replication ● Changing context: cloud & hybrid, “dumb pipes, smart endpoints”, Standard Apps & SaaS evolution, agile (change, deploy, scale, pay) System A System B
  • 35. Horizontal integration 3 5 Backend Database Backend custom App Backend Standard App SaaS (periodic) data synchronization, replication Fulfill synchronous request or command IoT Event driven, asynchronous notification Execute workflow (across multiple systems & people?) Technology & Application Adapters & Connectors, Workflow coordination, Event Bus, Exception Handling, Job Scheduling & Mgt, Transformation, Routing, Monitoring, Streaming Analysis, Authentication, API Gateway µ
  • 36. Challenges with Horizontal Integration ● Handle requirements for speed, consistency, volume & [global] distribution ● Detect Change ● Extract Data ● Publish Change ● Transport ○ deal with limited connectivity, temporary unavailability ● Convert/Transform ● Apply ● Monitor ● Handle exceptions ● Enforce constraints & authorization Source System Destination Detect changes Extract Data Transport Data Convert Data Apply Data Spot and Handle Errors Governance & Evolution Enforce Constraints & Authorization Decoupling Queue
  • 37. (Cloud) Adapters & iPaaS platforms To connect, detect & extract (from source) and connect & apply (to sink) Online Meetup Introducing Apache Kafka - Part Two of Three Debezium
  • 38. Integration and Integration? Changing Views on Integration - AUSOUG Webinar Series Evolved from Oracle Service Bus and SOA Suite Evolved from Oracle Data Integrator (ODI) and GoldenGate
  • 39. Data Pipeline is special type of Horizontal Integration A.S. Watson - Integration Architecture Future Raw/ Operational Data Sources Data Warehouse Data Lake Ingestion Data Wrangling “Data Mart” single purpose data set 3rd party data sources algorithms Machine Learning Model Dashboard, Notification & Alert Report, Visualization, Gamification, Data Explorer Business insight: what, when, who and why Machine Learning Deploy & Leverage Business Intelligence Master Data Management, Meta-Data Management, Data Governance Data Access, Authorization, Privacy “Data Mart” single purpose data set “Data Mart” single purpose data set “Data Mart” single purpose data set Internal and Public APIs Data Services Hot Flow of Real Time Streaming Data
  • 40. The Third Dimension Both Horizontal and Vertical Integration are pre-determined • end-to-end chains from specified source(s) to a designated target • triggered by synchronous requests and time events (batch) Changing Views on Integration - AUSOUG Webinar Series
  • 41. Events aka Messages Producers Consumers Event Hub Independent intermediary Robust, Scalable, Fast, History Retention Open Online Meetup Introducing Apache Kafka - Part One of Three Multi: multiple publishers to same topic, multiple subscribers on same topic (or none); Decoupled: publishers to not know about consumers and vice versa; consumers can receive messages from when they were off line
  • 42. Event-Driven Integration 42 Instead of the API definition and runtime endpoint, Event Consumers need the Message definition, the Topic name and the endpoint of the Event Store (aka Event Hub) Optional: forwarding endpoint of consumer when Pub/Sub with Push
  • 43. Changing Views on Integration - AUSOUG Webinar Series Out of the box Ahead of Time Integration & CQRS Event Sourcing Collective Data Set
  • 44. Utility Company looking for Performance, Scalability and Availability in their core data sets Online Meetup Introducing Apache Kafka - Part Two of Three CRM Meter Readings batch Invoicing Billing Marketing Campaigns
  • 45. Enterprise Service Bus Utility Company looking for Performance, Scalability and Availability in their core data sets Online Meetup Introducing Apache Kafka - Part Two of Three CRM Meter Readings batch Invoicing Billing Marketing Campaigns Customer Portal
  • 46. Enterprise Service Bus Utility Company looking for Performance, Scalability and Availability in their core data sets Online Meetup Introducing Apache Kafka - Part Two of Three CRM Meter Readings batch Invoicing Billing Marketing Campaigns Customer Portal Load on Core Systems & effect on Performance Availability Core Systems, Sizing & Cost & Complexity ESB
  • 47. Utility Company looking for Performance, Scalability and Availability in their core data sets Online Meetup Introducing Apache Kafka - Part Two of Three CRM Meter Readings Invoicing Billing Marketing Campaigns CRM Cache DB Meter Readings Cache DB Customer Portal
  • 48. Utility Company looking for Performance, Scalability and Availability in their core data sets Online Meetup Introducing Apache Kafka - Part Two of Three CRM Meter Readings Invoicing Billing Marketing Campaigns CRM Cache DB Meter Readings Cache DB Customer Portal
  • 49. Practical Challenges • Publish all [fine grained] change events from sources • Event schema evolution • Lag in Cache Databases • “eventual consistency” • Differences between sources and cache databases • Initial creation of Cache Databases • General Scale and Incidental event storm • Business and Mission Critical availability • Data Authorization • Logic enforced in source (applications) • GDPR Online Meetup Introducing Apache Kafka - Part Two of Three CRM Meter Readings Invoicing Billing Marketing Campaigns CRM Cache DB Meter Readings Cache DB Customer Portal
  • 51. CQRS => Specialized Query Stores Cater for different (read) Data Usage Scenarios Different in: ● Why ● What – grain, aggregation, breadth, type of and variation in queries ● How – format, language, accuracy and freshness, consistency ● When – frequency, time of day | week | month, 24/7 ● Where – latency, band width, off line ● Who – scale, different roles & user groups 5 2
  • 52. CQRS => Optimized Data Set for Special Use Case ● Shape & Format ● Right Grained (aggregation, consolidation) ● Filtered ● Enriched (from multiple sources) ● Location ● Time (refreshed at the right time) ● Search Options ● BASE (eventually – when? – consistent) ● Authorization ● GDPR 5 3 C Q BFF API Frontend
  • 53. Online Meetup Introducing Apache Kafka - Part Two of Three CQRS: A small step for mankind but a giant leap for [IT] architects
  • 54. Typical CQRS Architecture Online Meetup Introducing Apache Kafka - Part Two of Three Event Platform Source systems Poll Consume Detect & Retrieve Change Change Reporters Distributed Change Event Hub Change Projectors Destination systems Transform & Apply (re)Calculate & Record Convert, Translate, StoreEvent Schema Governance Monitoring & Error Handling
  • 56. Utility Company: Rebuild Cache Database Online Meetup Introducing Apache Kafka - Part Two of Three CRM Meter Readings CRM Cache DB Meter Readings Cache DB
  • 57. Utility Company: Rebuild Cache Database From Event Store Online Meetup Introducing Apache Kafka - Part Two of Three CRM Cache DB Meter Readings Cache DB
  • 58. Event Sourcing Driving CQRS Online Meetup Introducing Apache Kafka - Part Two of Three Events Event Store Current State accountId: 123 amount: 10 Owner: Jane Doe
  • 59. Event Sourcing Driving CQRS Online Meetup Introducing Apache Kafka - Part Two of Three Events Event Store Current State Other State Aggregate
  • 60. Event Sourcing • Event Store is immutable – append-only log of domain state transitions • It is the truth about data – everything else is derived • Replay events • to (re)construct a representation of the current state (aggregate) • up to a specific time to recreate moments in time • in Test environment to investigate an issue • on a remote location to create mirror & share state across boundaries • produce a fine grained audit trail • Challenges • Time required to reconstruct state • Grain of aggregates / definition of domain events Online Meetup Introducing Apache Kafka - Part Two of Three
  • 62. Data Sharing Ecosystems • Multiple independent organizations • Mutually benefit from having access to the same data at the same time • Share data & Have access to data with minimum of overhead and with equality among the ecosystem partners • Partners are on different network domains, physical locations, technology stacks, … • New Partners can join • Partners can leave • Consensus on what constitutes correct data Pragmatic CQRS - Digital Xchange
  • 63. Collective Dataset Pragmatic CQRS - Digital Xchange Company A Company C Company D Company E Company F Collective Dataset Company B
  • 64. Collective Dataset Pragmatic CQRS - Digital Xchange Company A Company C Company D Company E Company F Central Database Enterprise Service Bus Canonical SOAP WS/ REST API for Sending Inserts/Updates/Deletes and for Requesting current data Just In Time Integration Company B
  • 65. Collective Dataset = Collective Data Change Events Pragmatic CQRS - Digital Xchange Company A Company C Company D Company E Company F Central Event Platform Interfaces for Publishing and Consuming Events Note: events can be consumed asynchronously Ahead of Time Integration Company B
  • 66. Collective Dataset => Collective Data Store Pragmatic CQRS - Digital Xchange Company A Company C Company D Company E Company F Ahead of Time Integration Company B
  • 68. Key Takeaways • Integration is as relevant as ever – probably more so • API, microservice, Data Pipeline, Streaming Data (fast & furious), Hybrid Cloud (& on prem), IoT (physical and virtual), B2B, Big Data, SaaS • The one-size-fits-all approach based on Enterprise Service Bus is replaced • Three main integration styles (Vertical, Horizontal, Event-Driven) • With fitting Patterns and Tools (Dumb Pipes/Smart Endpoints, microservices, API Gateway, Serverless, Message Queue, Adapters & Connectors, … ) • Leveraging cloud technology • Out of the Box • Ahead of Time Integration (CQRS), Collective Data Set, Event Sourcing • Asynchronous is the preferred communication style • Decoupling is crucial for flexibility, availability (not brittle), scalability, distributability (“social distancing” for systems and services)
  • 69. Thank you for your attention I hope this was useful Changing Views on Integration - AUSOUG Webinar Series lucas.jellema@amis.nl | technology.amis.nl | @lucasjellema | lucas-jellema