Making Interactions
Responsive and Agile
With Asynchronous and Event Driven APIs
Phil Scanlon
APJ Head of Field Technology, Solace
Events Turn IT into an Engine
Source: Gartner
"Event-Driven Computing for Digital Business Technology Leaders“
AADI Summit London, 20 May 2019
2
• Something that has
happened
• The state or condition
of something changes
• Some piece of information
is created or changed
What is an
event?
Samantha scans her
boarding pass…
Event.
EstSamantha scans her
boarding pass …
Flight
Planning
Passenger
Trip
Management
Customer
Loyalty
EstimatedBoardingComplete
Time Value of
Events
Payments
HIGH VALUE
LOW VOLUME
T+3 SETTLEMENT
SOA, AT BEST
SILOED AMONGST
PROVIDERS
MULTI YEAR PROJECTS
HIGH VOLUME
LOW VALUE, MOBILE
REAL TIME
EVENT DRIVEN
FODDER FOR AI/ML
API ORIENTED
AGILITY NEEDED –
IMPLEMENT QR
CODE IN WEEKS
2015 2020
Event-Driven
Architecture
Delivers:
• More personalized,
responsive customer
experience
• More efficient, adaptive
business processes
• Ability to more quickly adapt
to risks and opportunities
• More reliable, more scalable
systems
Are we there yet?
Request/reply polling:
“Are we there yet?”
9
vs. event-driven pub/sub:
“I’ll let you know
when we’re there.”
The Shift to Event Driven is Accelerating!
10
© Solace
By 2022, 70% of new digital business solutions
will require event-sourced, real-time situational awareness - Gartner
Gartner: Top 10 Strategic Technology Trends for 2018:
Event-Driven Model. 8 March 2018
Event-driven
microservices are the
optimal software design
model to delivery digital
business agility.
• iPaaS, Integration &
API Platform
•
• Eventing
Gartner Hybrid Integration Platform – Event Streaming Platform
12
© Solace
Proprietary &
Confidential
Event
Platform
Event
Academy
Event
Ecosystem
Open Source
Contribution
Event Brokers
Distributed Event Brokers
Smart Routing
Edge Fanout
Guaranteed Delivery
Network Optimization
Pub Sub | Streaming
Filtering | Queuing
Adapters | Connectors
Replay
Public Cloud
Private Cloud
PaaS
Hybrid Cloud
REST
AMQP
JMS
MQTT
WebSockets
Connectors
Zero downtime
Zero data loss
Governance
Security
Burst Handling
High Performance
An event mesh is an architectural layer that routes
events from producers to consumers in a flexible,
reliable and governed manner, no matter where your
apps are deployed.
Uniform Connectivity
Dynamic Routing
Network Optimization
High Performance
High Availability
Security & Governance
Distributed Event Brokers Form an Event Mesh
© Solace
Proprietary & Confidential
JMS MQ
API Gateway
Public
Clouds PaaS
On Premise
Challenges:
Orchestrator is a bottleneck
Serial = slow response time
Slow time to market
Difficult to leverage AI/ML – requires big
changes
Cloud adoption challenges
APIs 1.0 - SOA and it’s challenges
API GW
ESB
Validations
Fraud Check
Credit Check
Core Banking
Systems of
Records
Tracing
Audit Logging
Ops
Clearing
GWs
SWIFT GW
Other GWs
Compliance
Reg
Reporting
Risk
SOAP/HTTP
SOAP MQ MQ JMS Adapter
Channels
Cloud Native
Storage
Cloud Native
Services
AI ML
New Services
?
?
Slow causes
response time
impact, errors
Response time is a
summation of all services!
Internal APIs
Microservices
Lets look at a traditional payment API architecture
Database as astate machine
Invoke
Initiation
API
Difficult to Change
Validation Funding Risk Clearing Settlement
Slow Response Time
Can we get better agility?
Topic Routing and Wildcards
Event Routing – the power of topics and wildcards
* > # +
Events have Topics:
pay/init/sg/v1/qr/ocbc/casa/taxi/comfort
REST URL = Topic:
https://host:port/
pay/init/sg/v1/qr/ocbc/casa/taxi/comfort
Events have payload:
Binary | JSON| XML |
Images |Anything
Events can be subscribed:
Wildcards:
pay/> All payments – for system
of record
pay/init/*/v1/qr/> all payments initializations
via QR for version 1
pay/clear/sg/v1/*/ocbc/> All payments clearing for
OCBC gateway
Event Driven Microservices
pay/valid/sg/v1/qr/ocbc/casapay/init/sg/v1/qr/>
• Microservices process fine grained business logic
• Microservices consume the events they can process
• Microservices produce events
Validation
REST AMQP
Event Routing with wildcards,
Event Catalog Agility
How about Response Time?
Eventual Consistency and
Deferred Execution
Identify the “Inline Path”, isolate the rest - Waiter Pattern
10x faster Response Time!
Consistent Response Time
Burst HandlingviaSlow consumer Isolation
Invoke API
Can Be Async, ParallelMust Be Sync, Serial
AI/ML
DataWarehouse
Audit, Logging
Others
Core Business Logic
Persistent Delivery
Request Reply
Every flow has some serial and some parallel paths à Only serial path should influence response time
Pub Sub Streaming and Queuing as Lego Blocks – Eventual Consistency, Deferred Execution
0.1s
0.1s
0.1s
0.2s
2s
3s
0.5s!
Deferred Execution, Eventual Consistency, Parallel Processing
Pub Sub – Parallel Event Routing
Guaranteed Delivery
Persistent Delivery
Request Reply
Parallel Processing= Event Better Throughput
Becoming an Event-Driven Enterprise
Event Broker
Mainframe
/SAP
Systems
of Record
Distributed
Apps
Legacy
Messaging
Liberate
Your Data
Event-Driven
Microservices
IoT Devices
(robots, elevators, cars)
Mobile / Web
IPaaS and APIs
Event Broker
Modernize Your Platform
Connected Places
(stores, factories, gas stations)
Lines of
Business
Partners Customers
Event Broker
Alert &
Inform
Event On Ramp/Offramp
Event On Ramp/Offramp
APIs, AsyncAPIs
APIs, AsyncAPIs
External APIs
B. AsyncAPI is to Events what OpenAPI is to RESTful
APIs
B. AsyncAPI - OpenAPI… AsyncAPI
OpenAPI
Specification
Swagger
Codegen
Generated
Code
Async
Specification
AsyncAPI
Codegen
SynchronousAsynchronous
…
HTTP
amqp,
amqps,
mqtt, mqtts,
ws, wss
Generated
Code
Runtime
Protocol
Runtime
Protocol
Discover events;
understand contents
and context
Govern events
Lifecycle management
Visualize application
choreography
Let external parties
discover and consume
your events
Understand which
applications consume
each event
Audit runtime for
exceptions
Event Portal
28
© Solace
Proprietary & Confidential
And the full stack
© Platform Universe
Proprietary &
Confidential
Front-End Frameworks
Platform Universe
Platform Universe Components with Open API
Kernel
UM
Atomic Services
Scheduling
Mission Control
DACM
Configuration
Management
OCP
Automated
Operation
ServicePortal
RAPM
Resource & App
Monitoring
Log
Center
Diagnosis
PlatformGateway
API Gateway
Mobile App
3rd Party Platforms
Containerized Microservice Application Framework
Service
Governance
Event Gateway
Event
Governance
Mini App
HTML5WEB
PaaS
DB
SQL / NON
Load Balancer
L4 / L7
Storage
File / Object
Distributed
Location Service
Distributed
Transaction Service
Big Data
Service and Event Mesh
Open API
31
© Solace
Proprietary &
Confidential
solace.dev
Be Event
Driven
Phil Scanlon– APJ Head of Field Technology
Phil.Scanlon@solace.com

Event mesh api meetup AsyncAPI Singapore

  • 1.
    Making Interactions Responsive andAgile With Asynchronous and Event Driven APIs Phil Scanlon APJ Head of Field Technology, Solace
  • 2.
    Events Turn ITinto an Engine Source: Gartner "Event-Driven Computing for Digital Business Technology Leaders“ AADI Summit London, 20 May 2019 2
  • 3.
    • Something thathas happened • The state or condition of something changes • Some piece of information is created or changed What is an event?
  • 4.
  • 5.
    EstSamantha scans her boardingpass … Flight Planning Passenger Trip Management Customer Loyalty EstimatedBoardingComplete
  • 6.
  • 7.
    Payments HIGH VALUE LOW VOLUME T+3SETTLEMENT SOA, AT BEST SILOED AMONGST PROVIDERS MULTI YEAR PROJECTS HIGH VOLUME LOW VALUE, MOBILE REAL TIME EVENT DRIVEN FODDER FOR AI/ML API ORIENTED AGILITY NEEDED – IMPLEMENT QR CODE IN WEEKS 2015 2020
  • 8.
    Event-Driven Architecture Delivers: • More personalized, responsivecustomer experience • More efficient, adaptive business processes • Ability to more quickly adapt to risks and opportunities • More reliable, more scalable systems
  • 9.
    Are we thereyet? Request/reply polling: “Are we there yet?” 9 vs. event-driven pub/sub: “I’ll let you know when we’re there.”
  • 10.
    The Shift toEvent Driven is Accelerating! 10 © Solace By 2022, 70% of new digital business solutions will require event-sourced, real-time situational awareness - Gartner Gartner: Top 10 Strategic Technology Trends for 2018: Event-Driven Model. 8 March 2018 Event-driven microservices are the optimal software design model to delivery digital business agility.
  • 11.
    • iPaaS, Integration& API Platform • • Eventing Gartner Hybrid Integration Platform – Event Streaming Platform
  • 12.
  • 13.
    Event Brokers Distributed EventBrokers Smart Routing Edge Fanout Guaranteed Delivery Network Optimization Pub Sub | Streaming Filtering | Queuing Adapters | Connectors Replay Public Cloud Private Cloud PaaS Hybrid Cloud REST AMQP JMS MQTT WebSockets Connectors Zero downtime Zero data loss Governance Security Burst Handling High Performance
  • 14.
    An event meshis an architectural layer that routes events from producers to consumers in a flexible, reliable and governed manner, no matter where your apps are deployed.
  • 15.
    Uniform Connectivity Dynamic Routing NetworkOptimization High Performance High Availability Security & Governance Distributed Event Brokers Form an Event Mesh © Solace Proprietary & Confidential JMS MQ API Gateway Public Clouds PaaS On Premise
  • 16.
    Challenges: Orchestrator is abottleneck Serial = slow response time Slow time to market Difficult to leverage AI/ML – requires big changes Cloud adoption challenges APIs 1.0 - SOA and it’s challenges API GW ESB Validations Fraud Check Credit Check Core Banking Systems of Records Tracing Audit Logging Ops Clearing GWs SWIFT GW Other GWs Compliance Reg Reporting Risk SOAP/HTTP SOAP MQ MQ JMS Adapter Channels Cloud Native Storage Cloud Native Services AI ML New Services ? ? Slow causes response time impact, errors Response time is a summation of all services!
  • 17.
    Internal APIs Microservices Lets lookat a traditional payment API architecture Database as astate machine Invoke Initiation API Difficult to Change Validation Funding Risk Clearing Settlement Slow Response Time
  • 18.
    Can we getbetter agility? Topic Routing and Wildcards
  • 19.
    Event Routing –the power of topics and wildcards * > # + Events have Topics: pay/init/sg/v1/qr/ocbc/casa/taxi/comfort REST URL = Topic: https://host:port/ pay/init/sg/v1/qr/ocbc/casa/taxi/comfort Events have payload: Binary | JSON| XML | Images |Anything Events can be subscribed: Wildcards: pay/> All payments – for system of record pay/init/*/v1/qr/> all payments initializations via QR for version 1 pay/clear/sg/v1/*/ocbc/> All payments clearing for OCBC gateway
  • 20.
    Event Driven Microservices pay/valid/sg/v1/qr/ocbc/casapay/init/sg/v1/qr/> •Microservices process fine grained business logic • Microservices consume the events they can process • Microservices produce events Validation REST AMQP Event Routing with wildcards, Event Catalog Agility
  • 21.
    How about ResponseTime? Eventual Consistency and Deferred Execution Identify the “Inline Path”, isolate the rest - Waiter Pattern 10x faster Response Time! Consistent Response Time Burst HandlingviaSlow consumer Isolation Invoke API Can Be Async, ParallelMust Be Sync, Serial AI/ML DataWarehouse Audit, Logging Others Core Business Logic Persistent Delivery Request Reply Every flow has some serial and some parallel paths à Only serial path should influence response time Pub Sub Streaming and Queuing as Lego Blocks – Eventual Consistency, Deferred Execution 0.1s 0.1s 0.1s 0.2s 2s 3s 0.5s!
  • 22.
    Deferred Execution, EventualConsistency, Parallel Processing Pub Sub – Parallel Event Routing Guaranteed Delivery Persistent Delivery Request Reply Parallel Processing= Event Better Throughput
  • 23.
    Becoming an Event-DrivenEnterprise Event Broker Mainframe /SAP Systems of Record Distributed Apps Legacy Messaging Liberate Your Data Event-Driven Microservices IoT Devices (robots, elevators, cars) Mobile / Web IPaaS and APIs Event Broker Modernize Your Platform Connected Places (stores, factories, gas stations) Lines of Business Partners Customers Event Broker Alert & Inform Event On Ramp/Offramp Event On Ramp/Offramp APIs, AsyncAPIs APIs, AsyncAPIs
  • 24.
  • 25.
    B. AsyncAPI isto Events what OpenAPI is to RESTful APIs
  • 26.
    B. AsyncAPI -OpenAPI… AsyncAPI OpenAPI Specification Swagger Codegen Generated Code Async Specification AsyncAPI Codegen SynchronousAsynchronous … HTTP amqp, amqps, mqtt, mqtts, ws, wss Generated Code Runtime Protocol Runtime Protocol
  • 27.
    Discover events; understand contents andcontext Govern events Lifecycle management Visualize application choreography Let external parties discover and consume your events Understand which applications consume each event Audit runtime for exceptions Event Portal 28 © Solace Proprietary & Confidential
  • 28.
  • 29.
    © Platform Universe Proprietary& Confidential Front-End Frameworks Platform Universe Platform Universe Components with Open API Kernel UM Atomic Services Scheduling Mission Control DACM Configuration Management OCP Automated Operation ServicePortal RAPM Resource & App Monitoring Log Center Diagnosis PlatformGateway API Gateway Mobile App 3rd Party Platforms Containerized Microservice Application Framework Service Governance Event Gateway Event Governance Mini App HTML5WEB PaaS DB SQL / NON Load Balancer L4 / L7 Storage File / Object Distributed Location Service Distributed Transaction Service Big Data Service and Event Mesh Open API
  • 30.
  • 31.
    Be Event Driven Phil Scanlon–APJ Head of Field Technology Phil.Scanlon@solace.com

Editor's Notes

  • #3  - And contributing significantly to achieving these business objective is becoming event driven, which is what Gartner has been saying - where Events enable an organization to become more realtime, agile, connected & distributed To do this IT architectures need to move from being data at rest centric to becoming event centric IT groups need to transition from being custodians of their firms data at rest to providing a nervous system if information in motion and and democratizing access to these events in realtime. That’s what Gartner says
  • #5 I assume most of you flew here to Orlando so you would have scanned your boarding pass. Anyone here named Samantha? Seems like a minor thing – a passenger scanning a boarding pass. Who would care about that? Well – let me walk you through some examples of how this event is interesting to an airline and it’s a subset of the examples that an architect at one of our clients used to “sell” being driven to his business Keep in mind that being “event driven” means distributing events as they happen to any system that wants it – so very typically making information available across organizational silos and LoBs
  • #6 Passenger Boarded Flight Planning extrapolates new BoardingComplete time and issues an EstimatedBoardingComplete event Received by airOps which cancels runway slot and books new one Received by groundOps to know current ground team won’t be done ontime so schedules new crew for their next gates Received by PassengerTripMgmt – who realizes Samantha will miss her connection and rebooks her on another flight ==> and tells her
  • #7  This architect also explained to his business about the time value of events Businesses understand the time value of money – where $1 is worth more today than it is in a year from now Events are similar: Understanding what is happening in your business today is more valuable than understanding tomorrow what happened in your business today
  • #10  The Incredibles Or better yet, I’ll give you continuous progress updates on our trip so you constantly know our status Then also I say it once and all 3 of you kids or 6 kids or whatever all get this information – I don’t have to tell you individually & you don’t have to ask me individually. This scales much better and for sure makes for a much quieter & more enjoyable ride!
  • #13 When change is needed, it can’t happen in just one part of the company, it needs to happen in all aspects of the company Introducing EVENT HORIZON as a framework to drive change across our entire company This isn’t just marketing words  It’s looking at every part of our company and embracing change To prove it to you we will go through each pillar here and outline how we will be embracing change starting with the unveiling of our new SOLACE PLATFORM!!!!!!!!
  • #15 Insert animated diagram on the next slide, let’s have it play on a loop while Shawn explains the concept.