SlideShare a Scribd company logo
1 of 37
Richard Seroter
Integration MVP
The Open Source Messaging Landscape
Richard Seroter
Sr. Director of Product at Pivotal
Lead Cloud Editor for InfoQ.com
9-time Microsoft MVP for Integration
Technical Trainer at Pluralsight
3-time Book Author
A different
direction
emerging for
integration.
@rseroter
Feel like you’re falling behind?
@rseroter
Let’s be aware of the
options out there.
@rseroter
#1
#2
#3
Look at modern integration criteria
Review popular OSS integration tools
Compare to the Microsoft portfolio
@rseroter
#1
#2
#3
Look at modern integration criteria
Review popular OSS integration tools
Compare to the Microsoft portfolio
@rseroter
Base messaging patterns
Publish / Subscribe
Queuing
Request / Response
@rseroter
high availability and resilience
@rseroter
significant
throughput
@rseroter
programmable and automated
@rseroter
lightweight
@rseroter
transient
endpoints
@rseroter
low barrier
to entry
@rseroter
@rseroter
Leave Behind …
Application Adapters
Transformation Engine
Workflow
Rich User Interface
Integration Teams
#1
#2
#3
Look at modern integration criteria
Review popular OSS integration tools
Compare to the Microsoft portfolio
@rseroter
@rseroter
what is it?
“Kafka is a distributed,
partitioned, replicated commit
log service. It provides the
functionality of a messaging
system, but with a unique
design."
@rseroter
Built by LinkedIn, open sourced in 2011
Binary protocol over TCP, lots of SDKs
Basic pub/sub, queue routing
Designed to persist large amounts of data
Targets real-time and batch consumers
what should I know?
@rseroter
broker
topic 1
(partition 1)
broker broker
zookeeper
producer producer
topic 1
(partition 2)
topic 1
(partition 3)
topic 1
(partition 1)
topic 1
(partition 1)
topic 1
(partition 2)
topic 1
(partition 2)
topic 1
(partition 3)
topic 1
(partition 3)
consumer 1 consumer 2 consumer 3
C1 offset: 5 C2 offset: 9 C2 offset: 5
how does it work?
@rseroter
@rseroter
@rseroter
“RabbitMQ is a messaging broker
- an intermediary for messaging.
It gives your applications a
common platform to send and
receive messages, and your
messages a safe place to live
until received."
what is it?
@rseroter
what should I know?
Implements AMQP standard
Pluggable architecture
Can persist data to disk, or just RAM
Supports multiple routing strategies
Mature ecosystem
@rseroter
node
exchange
broker
queue 1
broker
exchange
queue 3queue 2
producerproducer
consumer 1 consumer 2 consumer 3
how does it work?
@rseroter
@rseroter
@rseroter
“NATS acts as a central
nervous system for distributed
systems. Unlike traditional
enterprise messaging systems,
NATS provides an always on
‘dial-tone’."
what is it?
@rseroter
what should I know?
Very lightweight engine written in Go
Text protocol over TCP, lots of SDKs
Pub/sub with queue-like options
Auto-prunes slow, lazy client connections
@rseroter
NATS server NATS server
NATS server NATS server
producerproducer
consumer 1 consumer 2 consumer 3
how does it work?
@rseroter
@rseroter
#1
#2
#3
Look at modern integration criteria
Review popular OSS integration tools
Compare to the Microsoft portfolio
@rseroter
Kafka is like …kind of
Azure Event Hubs
Why?
Ordered sequence of events stored in partitions, read via offset
Not an enterprise message bus, but biased towards velocity
Different protocol support, hosting options, architecture
@rseroter
RabbitMQ is like …kind of
Azure Service Bus
Why?
AMQP support
Similar pub/sub constructs
Different hosting options, durability choices
@rseroter
NATS is like …kind of
???
Why?
Unique portability, performance story
Can play the role of one-way/two-way communication hub
@rseroter
#1
#2
#3
Look at modern integration criteria
Review popular OSS integration tools
Compare to the Microsoft portfolio
@rseroter
Thank you!@rseroter

More Related Content

What's hot

VMware Esx Short Presentation
VMware Esx Short PresentationVMware Esx Short Presentation
VMware Esx Short PresentationBarcamp Cork
 
Microsoft Exchange 2013 architecture
Microsoft Exchange 2013 architectureMicrosoft Exchange 2013 architecture
Microsoft Exchange 2013 architectureMotty Ben Atia
 
Cisco Live Brksec 3032 - NGFW Clustering
Cisco Live Brksec 3032 - NGFW ClusteringCisco Live Brksec 3032 - NGFW Clustering
Cisco Live Brksec 3032 - NGFW Clusteringib_cims
 
Wireless Standards Wi Fi 6 Evolution and Wi Fi 7
Wireless Standards Wi Fi 6 Evolution and Wi Fi 7Wireless Standards Wi Fi 6 Evolution and Wi Fi 7
Wireless Standards Wi Fi 6 Evolution and Wi Fi 7ijtsrd
 
Kamalio and Asterisk: What, Why & How
Kamalio and Asterisk: What, Why & HowKamalio and Asterisk: What, Why & How
Kamalio and Asterisk: What, Why & HowFred Posner
 
6G Training Course Part 8: 6G Devices
6G Training Course Part 8: 6G Devices6G Training Course Part 8: 6G Devices
6G Training Course Part 8: 6G Devices3G4G
 
Diameter Processing with Kamailio
Diameter Processing with KamailioDiameter Processing with Kamailio
Diameter Processing with KamailioCarsten Bock
 
SSO Strategy Implementation Considerations
SSO Strategy Implementation ConsiderationsSSO Strategy Implementation Considerations
SSO Strategy Implementation ConsiderationsJohn Bauer
 
LogRhythm Appliance Data Sheet
LogRhythm Appliance Data SheetLogRhythm Appliance Data Sheet
LogRhythm Appliance Data Sheetjordagro
 
Mikrotik Load Balancing with PCC
Mikrotik Load Balancing with PCCMikrotik Load Balancing with PCC
Mikrotik Load Balancing with PCCGLC Networks
 
Aynchronous Processing in Kamailio Configuration File
Aynchronous Processing in Kamailio Configuration FileAynchronous Processing in Kamailio Configuration File
Aynchronous Processing in Kamailio Configuration FileDaniel-Constantin Mierla
 
Avaya Session Border Controller (SBC)
Avaya Session Border Controller (SBC)Avaya Session Border Controller (SBC)
Avaya Session Border Controller (SBC)Motty Ben Atia
 
Linux Cluster Concepts
Linux Cluster ConceptsLinux Cluster Concepts
Linux Cluster Conceptsnixsavy
 
HCSA-Sales-Transmission & Access_2.pdf
HCSA-Sales-Transmission & Access_2.pdfHCSA-Sales-Transmission & Access_2.pdf
HCSA-Sales-Transmission & Access_2.pdfYuleonardiPutra
 

What's hot (20)

VMware Esx Short Presentation
VMware Esx Short PresentationVMware Esx Short Presentation
VMware Esx Short Presentation
 
Microsoft Exchange 2013 architecture
Microsoft Exchange 2013 architectureMicrosoft Exchange 2013 architecture
Microsoft Exchange 2013 architecture
 
Cisco Live Brksec 3032 - NGFW Clustering
Cisco Live Brksec 3032 - NGFW ClusteringCisco Live Brksec 3032 - NGFW Clustering
Cisco Live Brksec 3032 - NGFW Clustering
 
Wireless Standards Wi Fi 6 Evolution and Wi Fi 7
Wireless Standards Wi Fi 6 Evolution and Wi Fi 7Wireless Standards Wi Fi 6 Evolution and Wi Fi 7
Wireless Standards Wi Fi 6 Evolution and Wi Fi 7
 
Kamalio and Asterisk: What, Why & How
Kamalio and Asterisk: What, Why & HowKamalio and Asterisk: What, Why & How
Kamalio and Asterisk: What, Why & How
 
6G Training Course Part 8: 6G Devices
6G Training Course Part 8: 6G Devices6G Training Course Part 8: 6G Devices
6G Training Course Part 8: 6G Devices
 
Diameter Processing with Kamailio
Diameter Processing with KamailioDiameter Processing with Kamailio
Diameter Processing with Kamailio
 
SSO Strategy Implementation Considerations
SSO Strategy Implementation ConsiderationsSSO Strategy Implementation Considerations
SSO Strategy Implementation Considerations
 
Sistemas RAID
Sistemas RAIDSistemas RAID
Sistemas RAID
 
Raid
RaidRaid
Raid
 
Ipfs
IpfsIpfs
Ipfs
 
San
SanSan
San
 
LogRhythm Appliance Data Sheet
LogRhythm Appliance Data SheetLogRhythm Appliance Data Sheet
LogRhythm Appliance Data Sheet
 
Mikrotik Load Balancing with PCC
Mikrotik Load Balancing with PCCMikrotik Load Balancing with PCC
Mikrotik Load Balancing with PCC
 
Aynchronous Processing in Kamailio Configuration File
Aynchronous Processing in Kamailio Configuration FileAynchronous Processing in Kamailio Configuration File
Aynchronous Processing in Kamailio Configuration File
 
SDWAN.pdf
SDWAN.pdfSDWAN.pdf
SDWAN.pdf
 
Avaya Session Border Controller (SBC)
Avaya Session Border Controller (SBC)Avaya Session Border Controller (SBC)
Avaya Session Border Controller (SBC)
 
Linux Cluster Concepts
Linux Cluster ConceptsLinux Cluster Concepts
Linux Cluster Concepts
 
HCSA-Sales-Transmission & Access_2.pdf
HCSA-Sales-Transmission & Access_2.pdfHCSA-Sales-Transmission & Access_2.pdf
HCSA-Sales-Transmission & Access_2.pdf
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 

Viewers also liked

An agile approach to cloud infrastructure
An agile approach to cloud infrastructureAn agile approach to cloud infrastructure
An agile approach to cloud infrastructureRichard Seroter
 
Integration techniques for SaaS CRM applications
Integration techniques for SaaS CRM applicationsIntegration techniques for SaaS CRM applications
Integration techniques for SaaS CRM applicationsRichard Seroter
 
Keynote: Richard Seroter, Pivotal [FutureStack16]
Keynote: Richard Seroter, Pivotal [FutureStack16]Keynote: Richard Seroter, Pivotal [FutureStack16]
Keynote: Richard Seroter, Pivotal [FutureStack16]New Relic
 
The Future of Application integration
The Future of Application integrationThe Future of Application integration
The Future of Application integrationRichard Seroter
 
Don't Architect a Real-Time System that Can't Scale
Don't Architect a Real-Time System that Can't ScaleDon't Architect a Real-Time System that Can't Scale
Don't Architect a Real-Time System that Can't ScaleReal-Time Innovations (RTI)
 
Platform-as-a-Service (PaaS) Overview
Platform-as-a-Service (PaaS) OverviewPlatform-as-a-Service (PaaS) Overview
Platform-as-a-Service (PaaS) OverviewRichard Seroter
 
Using the Force.com Integration APIs
Using the Force.com Integration APIsUsing the Force.com Integration APIs
Using the Force.com Integration APIsRichard Seroter
 
Eng2 course outline
Eng2 course outline Eng2 course outline
Eng2 course outline Joe Onn Lim
 
FOXX - a Javascript application framework on top of ArangoDB
FOXX - a Javascript application framework on top of ArangoDBFOXX - a Javascript application framework on top of ArangoDB
FOXX - a Javascript application framework on top of ArangoDBArangoDB Database
 
OrientDB: Unlock the Value of Document Data Relationships
OrientDB: Unlock the Value of Document Data RelationshipsOrientDB: Unlock the Value of Document Data Relationships
OrientDB: Unlock the Value of Document Data RelationshipsFabrizio Fortino
 
OrientDB & Node.js Overview - JS.Everywhere() KW
OrientDB & Node.js Overview - JS.Everywhere() KWOrientDB & Node.js Overview - JS.Everywhere() KW
OrientDB & Node.js Overview - JS.Everywhere() KWgmccarvell
 
Grafos - Uma abordagem divertida - Latinoware 2014
Grafos - Uma abordagem divertida - Latinoware 2014Grafos - Uma abordagem divertida - Latinoware 2014
Grafos - Uma abordagem divertida - Latinoware 2014Christiano Anderson
 
Scaling RabbitMQ to 11
Scaling RabbitMQ to 11Scaling RabbitMQ to 11
Scaling RabbitMQ to 11Gavin Roy
 
Cloud integration patterns, technologies & trends
Cloud integration patterns, technologies & trendsCloud integration patterns, technologies & trends
Cloud integration patterns, technologies & trendsRichard Seroter
 
ArangoDB – A different approach to NoSQL
ArangoDB – A different approach to NoSQLArangoDB – A different approach to NoSQL
ArangoDB – A different approach to NoSQLArangoDB Database
 
OrientDB for real & Web App development
OrientDB for real & Web App developmentOrientDB for real & Web App development
OrientDB for real & Web App developmentLuca Garulli
 
Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Guido Schmutz
 
IoT Architecture - are traditional architectures good enough?
IoT Architecture - are traditional architectures good enough?IoT Architecture - are traditional architectures good enough?
IoT Architecture - are traditional architectures good enough?Guido Schmutz
 
AddisDev Meetup ii: Golang and Flow-based Programming
AddisDev Meetup ii: Golang and Flow-based ProgrammingAddisDev Meetup ii: Golang and Flow-based Programming
AddisDev Meetup ii: Golang and Flow-based ProgrammingSamuel Lampa
 

Viewers also liked (20)

An agile approach to cloud infrastructure
An agile approach to cloud infrastructureAn agile approach to cloud infrastructure
An agile approach to cloud infrastructure
 
Integration techniques for SaaS CRM applications
Integration techniques for SaaS CRM applicationsIntegration techniques for SaaS CRM applications
Integration techniques for SaaS CRM applications
 
Keynote: Richard Seroter, Pivotal [FutureStack16]
Keynote: Richard Seroter, Pivotal [FutureStack16]Keynote: Richard Seroter, Pivotal [FutureStack16]
Keynote: Richard Seroter, Pivotal [FutureStack16]
 
The Future of Application integration
The Future of Application integrationThe Future of Application integration
The Future of Application integration
 
Don't Architect a Real-Time System that Can't Scale
Don't Architect a Real-Time System that Can't ScaleDon't Architect a Real-Time System that Can't Scale
Don't Architect a Real-Time System that Can't Scale
 
Platform-as-a-Service (PaaS) Overview
Platform-as-a-Service (PaaS) OverviewPlatform-as-a-Service (PaaS) Overview
Platform-as-a-Service (PaaS) Overview
 
Using the Force.com Integration APIs
Using the Force.com Integration APIsUsing the Force.com Integration APIs
Using the Force.com Integration APIs
 
Eng2 course outline
Eng2 course outline Eng2 course outline
Eng2 course outline
 
FOXX - a Javascript application framework on top of ArangoDB
FOXX - a Javascript application framework on top of ArangoDBFOXX - a Javascript application framework on top of ArangoDB
FOXX - a Javascript application framework on top of ArangoDB
 
OrientDB: Unlock the Value of Document Data Relationships
OrientDB: Unlock the Value of Document Data RelationshipsOrientDB: Unlock the Value of Document Data Relationships
OrientDB: Unlock the Value of Document Data Relationships
 
OrientDB & Node.js Overview - JS.Everywhere() KW
OrientDB & Node.js Overview - JS.Everywhere() KWOrientDB & Node.js Overview - JS.Everywhere() KW
OrientDB & Node.js Overview - JS.Everywhere() KW
 
Grafos - Uma abordagem divertida - Latinoware 2014
Grafos - Uma abordagem divertida - Latinoware 2014Grafos - Uma abordagem divertida - Latinoware 2014
Grafos - Uma abordagem divertida - Latinoware 2014
 
Scaling RabbitMQ to 11
Scaling RabbitMQ to 11Scaling RabbitMQ to 11
Scaling RabbitMQ to 11
 
Cloud integration patterns, technologies & trends
Cloud integration patterns, technologies & trendsCloud integration patterns, technologies & trends
Cloud integration patterns, technologies & trends
 
Introdução ao neo4j
Introdução ao neo4jIntrodução ao neo4j
Introdução ao neo4j
 
ArangoDB – A different approach to NoSQL
ArangoDB – A different approach to NoSQLArangoDB – A different approach to NoSQL
ArangoDB – A different approach to NoSQL
 
OrientDB for real & Web App development
OrientDB for real & Web App developmentOrientDB for real & Web App development
OrientDB for real & Web App development
 
Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !
 
IoT Architecture - are traditional architectures good enough?
IoT Architecture - are traditional architectures good enough?IoT Architecture - are traditional architectures good enough?
IoT Architecture - are traditional architectures good enough?
 
AddisDev Meetup ii: Golang and Flow-based Programming
AddisDev Meetup ii: Golang and Flow-based ProgrammingAddisDev Meetup ii: Golang and Flow-based Programming
AddisDev Meetup ii: Golang and Flow-based Programming
 

Similar to The Open Source Messaging Landscape

A vision for ejabberd - ejabberd SF Meetup
A vision for ejabberd - ejabberd SF MeetupA vision for ejabberd - ejabberd SF Meetup
A vision for ejabberd - ejabberd SF MeetupMickaël Rémond
 
How to choose the right software
How to choose the right softwareHow to choose the right software
How to choose the right softwareRüdiger Gros
 
Moving to cloud-native integration
Moving to cloud-native integrationMoving to cloud-native integration
Moving to cloud-native integrationRichard Seroter
 
Microservice Pattern Launguage
Microservice Pattern LaunguageMicroservice Pattern Launguage
Microservice Pattern LaunguageInho Kang
 
Intro to Perfect - LA presentation
Intro to Perfect - LA presentationIntro to Perfect - LA presentation
Intro to Perfect - LA presentationTim Taplin
 
The difference between a hub, switch and router webopedia
The difference between a hub, switch and router   webopediaThe difference between a hub, switch and router   webopedia
The difference between a hub, switch and router webopediaHarikiran Raju
 
Apache Thrift, a brief introduction
Apache Thrift, a brief introductionApache Thrift, a brief introduction
Apache Thrift, a brief introductionRandy Abernethy
 
Architecting for the public and the private cloud
Architecting for the public and the private cloudArchitecting for the public and the private cloud
Architecting for the public and the private cloudHammad Rajjoub
 
Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Guido Schmutz
 
"Taming the Dragon": Zenoh's Genesis
"Taming the Dragon": Zenoh's Genesis "Taming the Dragon": Zenoh's Genesis
"Taming the Dragon": Zenoh's Genesis ZettaScaleTechnology
 
Developing Actors in Azure with .net
Developing Actors in Azure with .netDeveloping Actors in Azure with .net
Developing Actors in Azure with .netMarco Parenzan
 
Apache Pulsar: Why Unified Messaging and Streaming Is the Future - Pulsar Sum...
Apache Pulsar: Why Unified Messaging and Streaming Is the Future - Pulsar Sum...Apache Pulsar: Why Unified Messaging and Streaming Is the Future - Pulsar Sum...
Apache Pulsar: Why Unified Messaging and Streaming Is the Future - Pulsar Sum...StreamNative
 
Message Architectures in Distributed Systems - Data Day Texas 2013-01-11
Message Architectures in Distributed Systems - Data Day Texas 2013-01-11Message Architectures in Distributed Systems - Data Day Texas 2013-01-11
Message Architectures in Distributed Systems - Data Day Texas 2013-01-11Eric Lubow
 
Why Is Rust Gaining Traction In Recent Years?
Why Is Rust Gaining Traction In Recent Years?Why Is Rust Gaining Traction In Recent Years?
Why Is Rust Gaining Traction In Recent Years?Techahead Software
 
Move fast and make things with microservices
Move fast and make things with microservicesMove fast and make things with microservices
Move fast and make things with microservicesMithun Arunan
 
初探 OpenTelemetry - 蒐集遙測數據的新標準
初探 OpenTelemetry - 蒐集遙測數據的新標準初探 OpenTelemetry - 蒐集遙測數據的新標準
初探 OpenTelemetry - 蒐集遙測數據的新標準Marcus Tung
 

Similar to The Open Source Messaging Landscape (20)

A vision for ejabberd - ejabberd SF Meetup
A vision for ejabberd - ejabberd SF MeetupA vision for ejabberd - ejabberd SF Meetup
A vision for ejabberd - ejabberd SF Meetup
 
How to choose the right software
How to choose the right softwareHow to choose the right software
How to choose the right software
 
Moving to cloud-native integration
Moving to cloud-native integrationMoving to cloud-native integration
Moving to cloud-native integration
 
Architecting for Scale
Architecting for ScaleArchitecting for Scale
Architecting for Scale
 
Microservice Pattern Launguage
Microservice Pattern LaunguageMicroservice Pattern Launguage
Microservice Pattern Launguage
 
Intro to Perfect - LA presentation
Intro to Perfect - LA presentationIntro to Perfect - LA presentation
Intro to Perfect - LA presentation
 
The difference between a hub, switch and router webopedia
The difference between a hub, switch and router   webopediaThe difference between a hub, switch and router   webopedia
The difference between a hub, switch and router webopedia
 
Apache Thrift, a brief introduction
Apache Thrift, a brief introductionApache Thrift, a brief introduction
Apache Thrift, a brief introduction
 
Architecting for the public and the private cloud
Architecting for the public and the private cloudArchitecting for the public and the private cloud
Architecting for the public and the private cloud
 
All up-dev ops
All up-dev opsAll up-dev ops
All up-dev ops
 
Large Scale PHP
Large Scale PHPLarge Scale PHP
Large Scale PHP
 
Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !
 
Cloud to Edge
Cloud to EdgeCloud to Edge
Cloud to Edge
 
"Taming the Dragon": Zenoh's Genesis
"Taming the Dragon": Zenoh's Genesis "Taming the Dragon": Zenoh's Genesis
"Taming the Dragon": Zenoh's Genesis
 
Developing Actors in Azure with .net
Developing Actors in Azure with .netDeveloping Actors in Azure with .net
Developing Actors in Azure with .net
 
Apache Pulsar: Why Unified Messaging and Streaming Is the Future - Pulsar Sum...
Apache Pulsar: Why Unified Messaging and Streaming Is the Future - Pulsar Sum...Apache Pulsar: Why Unified Messaging and Streaming Is the Future - Pulsar Sum...
Apache Pulsar: Why Unified Messaging and Streaming Is the Future - Pulsar Sum...
 
Message Architectures in Distributed Systems - Data Day Texas 2013-01-11
Message Architectures in Distributed Systems - Data Day Texas 2013-01-11Message Architectures in Distributed Systems - Data Day Texas 2013-01-11
Message Architectures in Distributed Systems - Data Day Texas 2013-01-11
 
Why Is Rust Gaining Traction In Recent Years?
Why Is Rust Gaining Traction In Recent Years?Why Is Rust Gaining Traction In Recent Years?
Why Is Rust Gaining Traction In Recent Years?
 
Move fast and make things with microservices
Move fast and make things with microservicesMove fast and make things with microservices
Move fast and make things with microservices
 
初探 OpenTelemetry - 蒐集遙測數據的新標準
初探 OpenTelemetry - 蒐集遙測數據的新標準初探 OpenTelemetry - 蒐集遙測數據的新標準
初探 OpenTelemetry - 蒐集遙測數據的新標準
 

More from Richard Seroter

Modernizing Integrations
Modernizing IntegrationsModernizing Integrations
Modernizing IntegrationsRichard Seroter
 
What NASA’s Voyager mission teaches us about building distributed systems
What NASA’s Voyager mission teaches us about building distributed systemsWhat NASA’s Voyager mission teaches us about building distributed systems
What NASA’s Voyager mission teaches us about building distributed systemsRichard Seroter
 
What "good at software" looks like
What "good at software" looks likeWhat "good at software" looks like
What "good at software" looks likeRichard Seroter
 
Product Ownership: Explained
Product Ownership: ExplainedProduct Ownership: Explained
Product Ownership: ExplainedRichard Seroter
 
Architecting Highly Available Cloud Integrations
Architecting Highly Available Cloud IntegrationsArchitecting Highly Available Cloud Integrations
Architecting Highly Available Cloud IntegrationsRichard Seroter
 

More from Richard Seroter (6)

Modernizing Integrations
Modernizing IntegrationsModernizing Integrations
Modernizing Integrations
 
What NASA’s Voyager mission teaches us about building distributed systems
What NASA’s Voyager mission teaches us about building distributed systemsWhat NASA’s Voyager mission teaches us about building distributed systems
What NASA’s Voyager mission teaches us about building distributed systems
 
What "good at software" looks like
What "good at software" looks likeWhat "good at software" looks like
What "good at software" looks like
 
Product Ownership: Explained
Product Ownership: ExplainedProduct Ownership: Explained
Product Ownership: Explained
 
Architecting Highly Available Cloud Integrations
Architecting Highly Available Cloud IntegrationsArchitecting Highly Available Cloud Integrations
Architecting Highly Available Cloud Integrations
 
DevOps Explained
DevOps ExplainedDevOps Explained
DevOps Explained
 

Recently uploaded

Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 

Recently uploaded (20)

Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 

The Open Source Messaging Landscape

Editor's Notes

  1. Source: https://www.flickr.com/photos/seathepicture/14893913398/ Systems integration is more important than ever. More services, more endpoints, more participants. But it feels like the integration space is evolving. I went looking for materials that described the trends that led to where we are now. Found my own presentation: http://www.slideshare.net/rseroter/the-future-of-application-integration-39516601 I highlighted these trends almost two years ago: cloud IoT, microservices, pre-canned integrations, containers, DevOps, IT budgets outside of IT, OSS, more. This all leads to a new set of challenges.
  2. Source: https://www.flickr.com/photos/richseattle/5656483022/ Can be overwhelming! Even if you ignore the crazy pace of MSFT development in Azure – Service Bus, Event Hubs, IoT, Flow, Logic Apps, etc – there’s a TON of work happening in open source.
  3. Source: https://www.flickr.com/photos/56690322@N03/6706739587/ Let’s take a look at what’s out there. Expose you to what’s building in popularity, so that you feel prepared when your boss asks you about it!
  4. This isn’t to say that this criteria represents the NORM. To be sure, I’d bet that the majority of app integration today is still connecting that dusty banking system to another system of record using pipe-delimited files and FTP. BUT, as those systems start to go offline, they’re being modernized or replaced with much of this criteria in mind.
  5. Core messaging styles and patterns are timeless. Enterprise Integration Patterns book as relevant as ever. Just may not need big, complex messaging systems to accomplish it!
  6. Source: https://www.flickr.com/photos/jslicer1/9073651348/ The idea of a 9-5 app is going away. Systems are accessed at all hours, from all places, with unpredictable usage patterns. Integration solutions are expected to stay online, recover gracefully under load or node failure. WHY (continual use, handle bursts, not relying solely on HTTP, want brokerage, heartbeat) WHERE (microservices integration, platform backbones)
  7. Source: https://www.flickr.com/photos/richardbarnett/14738836489/ High throughput Big data, stream analytics, dozens or hundreds of microservices. All of these lead to significant chatter and need for not just high throughput but LOW LATENCY. WHY (machine born data, real-time analytics) WHERE (IoT, log data, click data, telemetry)
  8. Source: https://www.flickr.com/photos/76220901@N03/6878355129/ Companies shouldn’t be using any software that can’t be installed consistently with no human involvement. Need to be able to stand up environments instantly on-prem or in the cloud so that I can experiment with a new version, do load testing, or provide an acceptance test setting for users.
  9. Source: https://www.flickr.com/photos/farbwahl/8940552738/ Microservices, not chock-full platforms Messaging backbone between services; business and routing logic is in the service, not the messaging system In order to support programmable, automated environments, I often need something small! Composable, limited dependencies. May have multiple components involved (edge to center, linking services) and don’t want something that unwieldy. WHY (IoT, cloud, container friendly) WHERE (edge computing)
  10. Source: https://www.flickr.com/photos/formaspace/8315357012/ I may not know who all my subscribers are. From a BizTalk perspective, that feels like blasphemy (minus what ESB Toolkit let you do). But in this modern world, you have ephemeral services, and those that come and go on THEIR schedule. WHY (more transient, less single point of contact for config)
  11. Source: https://www.flickr.com/photos/blue_wave/7165137785/ Straightforward to use by ANY engineer, not just a shared integration team. Numerous SDKs available, ecosystem is great.
  12. Source: https://www.flickr.com/photos/78164779@N06/9327710998/ Clearly still important, but not as critical as part of a centralized engine …