SlideShare a Scribd company logo
#engageug
Hello are you listening
There is stream for everything
1
Frank van der Linden - elstar IT
#engageug
Introduction
• Freelance Full stack developer
• Owner of elstar IT
• Curious of new technology
• Spring Framework enthusiast
• IBM Champion 2020
• Volleybal referee
2
#engageug
This session about
‘thinking-out-side-of-the-yellow-bubble’
3
Disclaimer
#engageug
‘Everything in life can be broken down to
producers, consumers and producers’
4
Mark Heckler
#engageug
How to proceed
• Pub Sub principle
• About streams
• Spring Cloud Streams
• Demo
5
#engageug
Publish/Subscribe principle
6
#engageug
Publish/Subscribe principle
7
#engageug
Publish/Subscribe principle
• Loose coupling
• Scalability
• Non-blocking
• Message driven
• 4 interfaces (Producer, Subscriber, Subscription and
Processor)
8
#engageug 9
#engageug
About streams
10
#engageug
Parts of the stream
• Producer or Source or Publisher, publish the message on
the topic or queue
• Consumer or Sink or Receiver, receiving the message from
the topic or queue
• Processor, can consume message, manipulate it and
produce it again.
• Broker, the middleware who is handling the queues or
topics.
11
#engageug
Message Broker
• Route messages to one or more destinations
• Transform messages to an alternative representation
• Provide content and topic-based message routing using
the publish–subscribe pattern
• Perform message aggregation, decomposing messages into
multiple messages and sending them to their destination,
then recomposing the responses into one message to return
to the use
• Respond to events or errors
12
#engageug
Message Broker
• Kafka
• RabbitMQ
• OpenMQ
• ActiveMQ (Amazone MQ)
• Google Cloud PubSub
• Azure Service Bus
• Amazone Kinesis
• IBM MQ
• ……..
13
#engageug 14
#engageug
Queue versus Topic
15
#engageug 16
Domino Event Publisher
#engageug
Domino Event Publisher
• Add-on on Domino
• Security Plugin for MQ’s needed to be installed
• Will share UniqueID of Document and event type
• Consumer needs to connect back to Domino to get all the
information
• May be later also other information to produce.
• Private Beta will be available soon to HCL Masters.
17
#engageug
Domino Event Publisher - my opinion
• A good first step to embrace the decoupled world
• Too much moving parts
• Too complicated
• Not following the pub/sub principle, because of the needed
call back
• Hope it will be possible in the future to share just information
with the broker.
18
#engageug
Spring Cloud Stream
19
#engageug
Spring Cloud Stream
• Part of the Spring Cloud Family
• Abstraction of the connection with a broker
• Works in existing Spring Boot apps
• Binders are the foundation
• Multiple brokers are supported
20
#engageug 21
#engageug 22
#engageug 23
#engageug
Demo application
24
#engageug
Demo
• Spring Boot - foundation for Java API
• Spring data - for connection to datastore
• Spring Cloud Stream - abstraction to connect to broker
• RabbitMQ
• NodeJS + Typescript
• MongoDb
• Redis
25
#engageug 26
controller + producercontroller + producer
http://localhost:3031/demo/api/todohttp://localhost:4000/api/todo
processorprocessor
consumer consumer
post to database
#engageug
Demo Flow
27
producer processor consumer
message.header.type=open message.header.type=completed
#engageug
Spring Cloud Stream - things to remember
28
application.yaml
pom.xml
#engageug
Spring Cloud Stream - things to remember
29
bindings
processor
producer
consumer
#engageug
NodeJS - things to remember
30
server.ts
controller
router
#engageug
NodeJS - things to remember
31
processor
producer
#engageug
NodeJS - things to remember
32
consumer
mongo service
redis service
#engageug
Questions
33
#engageug
Resources
• Spring Cloud Stream
• https://spring.io/projects/spring-cloud-stream
• Demo application
• https://github.com/flinden68/streams-demo
• RabbitMQ
• https://www.rabbitmq.com/documentation.html
• MongoDb
• https://www.mongodb.com/
• Redis
• https://redis.io/topics/quickstart
• NodeJS
• https://nodejs.org/en/
34
• MongoDb Compass Community
• https://www.mongodb.com/products/compass
• Redily (GUI for Redis)
• https://www.redily.app/
#engageug
Thank you
• @flinden68
• http://www.elstarit.nl
• flinden68@elstarit.nl
• https://nl.linkedin.com/in/flinden68
35

More Related Content

PDF
NCUG 2019: Super charge your API’s with Reactive streams
PDF
NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...
PDF
Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...
PDF
Spring forward: an introduction to Spring boot and Thymeleaf
PPTX
A brief intro to nodejs
PPTX
Microsoft ASP.NET 5 - The new kid on the block
PPTX
Standard libraries with_xamarin
PPTX
Reactive Web Development with Spring Boot 2
NCUG 2019: Super charge your API’s with Reactive streams
NCUG 2019: Spring forward: an introduction to Spring boot and Thymeleaf for (...
Icon UK 2018 - Spring forward: an introduction to Spring boot and Thymeleaf f...
Spring forward: an introduction to Spring boot and Thymeleaf
A brief intro to nodejs
Microsoft ASP.NET 5 - The new kid on the block
Standard libraries with_xamarin
Reactive Web Development with Spring Boot 2

What's hot (20)

PDF
Developing Resilient Cloud Native Apps with Spring Cloud
PDF
Spring Boot
PPTX
Debugging your Way through .NET with Visual Studio 2015
PPTX
Container Orchestration for .NET Developers
PPTX
Deploy an Asp.Net Core App on Azure
PDF
Dot Net Core
PDF
Legacy Sins
PDF
Micro Services - Small is Beautiful
PDF
Microservice - All is Small, All is Well?
PDF
We don't need consensus: All agreed?
PDF
Building Elixir App Release with Distillery and Docker
PDF
PDF
Immutable infrastructure with Boxfuse
PDF
Powerful Automation Made Simple
PDF
Orchestrator for QlikView: add-on product description
PDF
JBCNConf 2017 - Building microservices with Vert.x
PDF
Increasing velocity via serless semantics
PPTX
Introduction to ASP.NET 5
PDF
Splunk user group - automating Splunk with Ansible
PDF
Devops and Immutable infrastructure - Cloud Expo 2015 NYC
Developing Resilient Cloud Native Apps with Spring Cloud
Spring Boot
Debugging your Way through .NET with Visual Studio 2015
Container Orchestration for .NET Developers
Deploy an Asp.Net Core App on Azure
Dot Net Core
Legacy Sins
Micro Services - Small is Beautiful
Microservice - All is Small, All is Well?
We don't need consensus: All agreed?
Building Elixir App Release with Distillery and Docker
Immutable infrastructure with Boxfuse
Powerful Automation Made Simple
Orchestrator for QlikView: add-on product description
JBCNConf 2017 - Building microservices with Vert.x
Increasing velocity via serless semantics
Introduction to ASP.NET 5
Splunk user group - automating Splunk with Ansible
Devops and Immutable infrastructure - Cloud Expo 2015 NYC
Ad

Similar to Engage 2020: Hello are you listening, There is stream for everything (20)

PDF
Engage 2019: The good, the bad and the ugly: a not so objective view on front...
PDF
Engage 2016 - IBM Verse
KEY
Nitobi/PhoneGap at Bootup 2011
PPTX
Blockchain in enterprise - Challenges, Considerations and Designs
PDF
QCon 2015 - Microservices Track Notes
PPTX
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
PPTX
Shopify - CNCF March 2025 Meetup - Presentation - 26-03-25.pptx
PPTX
Driving Developers To Your API
ODP
Discover eZ Publish: why you have to know this product
PDF
WSO2Con EU 2015: Opening Keynote - Helping You Connect the World
PPTX
Best Practices for API Adoption - WIP Factory presentation for AnyPresence we...
PDF
Working with Developers
PDF
stackconf 2021 | First hand experience: How Nextcloud stayed productive durin...
ODP
2014 Q4 IAM Open Source Support Program Update
PDF
A call to JS Developers - Let’s stop trying to impress each other and start b...
PDF
IBM Bluemix Nice Meetup #4-20170302 6 Meetup @INRIA - BlockChain
PPTX
Hyperledger community update February 2018
PDF
Openbar 12 - Leuven - From reactive programming to reactive architecture
PPTX
Architectural Considerations for Startups
PPTX
Cloud anti-patterns
Engage 2019: The good, the bad and the ugly: a not so objective view on front...
Engage 2016 - IBM Verse
Nitobi/PhoneGap at Bootup 2011
Blockchain in enterprise - Challenges, Considerations and Designs
QCon 2015 - Microservices Track Notes
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
Shopify - CNCF March 2025 Meetup - Presentation - 26-03-25.pptx
Driving Developers To Your API
Discover eZ Publish: why you have to know this product
WSO2Con EU 2015: Opening Keynote - Helping You Connect the World
Best Practices for API Adoption - WIP Factory presentation for AnyPresence we...
Working with Developers
stackconf 2021 | First hand experience: How Nextcloud stayed productive durin...
2014 Q4 IAM Open Source Support Program Update
A call to JS Developers - Let’s stop trying to impress each other and start b...
IBM Bluemix Nice Meetup #4-20170302 6 Meetup @INRIA - BlockChain
Hyperledger community update February 2018
Openbar 12 - Leuven - From reactive programming to reactive architecture
Architectural Considerations for Startups
Cloud anti-patterns
Ad

More from Frank van der Linden (20)

PPTX
Engage Usergroup 2024 - The Good The Bad_The Ugly
PDF
Social connections14: Super charge your API’s with Reactive streams
PDF
DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...
PDF
Wcs-1785 How Watson, Bluemix, Cloudant and XPages can work together in a real...
PPTX
DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...
PPTX
A (XPages) developers guide to Cloudant - MeetIT
PPTX
A (XPages) developers guide to Cloudant
PPTX
Let's serve your data
PPTX
Let's server your Data
PPTX
Don't worry with bower
PPTX
Bccon use notes objects in memory and other useful
PPTX
Use notes objects in memory and other useful java tips for xpages development
PPTX
An XPager's Guide to Process Server-Side Jobs on Domino
PPTX
The power of dots
PPTX
Let me introduce you: DOTS
PPTX
Integrate domino designer with cvs source control
PPTX
how to connect your app to the activity stream with x-pages
PPT
Uklug2012 yellow and blue stream
ODP
Domino point2012 integrate domino designer with cvs source control
PPTX
Dnug2012 yellow and blue stream
Engage Usergroup 2024 - The Good The Bad_The Ugly
Social connections14: Super charge your API’s with Reactive streams
DEV03 - How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Real...
Wcs-1785 How Watson, Bluemix, Cloudant and XPages can work together in a real...
DEV-1129 How Watson, Bluemix, Cloudant, and XPages Can Work Together In A Rea...
A (XPages) developers guide to Cloudant - MeetIT
A (XPages) developers guide to Cloudant
Let's serve your data
Let's server your Data
Don't worry with bower
Bccon use notes objects in memory and other useful
Use notes objects in memory and other useful java tips for xpages development
An XPager's Guide to Process Server-Side Jobs on Domino
The power of dots
Let me introduce you: DOTS
Integrate domino designer with cvs source control
how to connect your app to the activity stream with x-pages
Uklug2012 yellow and blue stream
Domino point2012 integrate domino designer with cvs source control
Dnug2012 yellow and blue stream

Recently uploaded (20)

PPTX
Why Generative AI is the Future of Content, Code & Creativity?
PDF
AutoCAD Professional Crack 2025 With License Key
PDF
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
Computer Software and OS of computer science of grade 11.pptx
PDF
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
iTop VPN Free 5.6.0.5262 Crack latest version 2025
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
PDF
Nekopoi APK 2025 free lastest update
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PDF
Complete Guide to Website Development in Malaysia for SMEs
PDF
Tally Prime Crack Download New Version 5.1 [2025] (License Key Free
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
WiFi Honeypot Detecscfddssdffsedfseztor.pptx
Why Generative AI is the Future of Content, Code & Creativity?
AutoCAD Professional Crack 2025 With License Key
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
Navsoft: AI-Powered Business Solutions & Custom Software Development
Computer Software and OS of computer science of grade 11.pptx
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
Operating system designcfffgfgggggggvggggggggg
Design an Analysis of Algorithms II-SECS-1021-03
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Oracle Fusion HCM Cloud Demo for Beginners
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
iTop VPN Free 5.6.0.5262 Crack latest version 2025
wealthsignaloriginal-com-DS-text-... (1).pdf
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
Nekopoi APK 2025 free lastest update
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
Complete Guide to Website Development in Malaysia for SMEs
Tally Prime Crack Download New Version 5.1 [2025] (License Key Free
Internet Downloader Manager (IDM) Crack 6.42 Build 41
WiFi Honeypot Detecscfddssdffsedfseztor.pptx

Engage 2020: Hello are you listening, There is stream for everything