Using Streaming APIs in Production

Luca Mattia Ferrari
Luca Mattia FerrariEMEA Solution Architect en Red Hat
Using Streaming APIs in Production:
use cases and architecture from the real
world
Luca Ferrari - EMEA Solution Architect
Red Hat
Red Hat2
Agenda:
❏ Why am I here?
❏ Why are you here?
❏ Short Kafka intro
❏ Kafka & microservices
❏ Kafka & streaming
❏ Kafka in production
❏ Demo
Red Hat3
KAFKA INTRODUCTION
Red Hat
pub/sub
4
Red Hat
topic, partitions and offset
5
Red Hat
truck gps example
6
Red Hat
broker and partitions
7
Red Hat
replication and leaders
8
Red Hat
producers
9
Red Hat
consumers
10
Red Hat
delivery semantics
11
Red Hat
broker discovery
12
Red Hat
zookeeper
13
Red Hat
full picture
14
Red Hat15
KAFKA &
MICROSERVICES
Red Hat
monolithic approach
16
Red Hat
SOA approach
17
Red Hat
REST approach
18
Red Hat
API Management approach
19
Red Hat
observations
20
What we want:
● Improve decoupling
● Improve scalability
What we don’t want:
● Service coupling
● Ripple effect
● Service overload
● Slow response time
Red Hat
event driven approach
21
Red Hat22
KAFKA &
STREAMING
Red Hat
including streaming data
23
Red Hat
Kafka Streams
24
Red Hat
Kafka Streams &
Streaming APIs
25
Kafka Strengths:
● Real Time Data Pipeline
● High-throughput
● Fault-tolerant
● Low Latency 
● Scalability 
Kafka Limits:
Kafka is not optimized to provide API consumers with friendly access to real time data.
Difficult to expose and re-use API oriented tools for Kafka
Red Hat
Kafka Streams &
Streaming APIs
26
Protocol bridge
The way to present the information is not friendly but for the REST all is good
Is there an easy Kafka way to bridge Kafka and REST?
There are several: Apache Camel to the rescue!
Red Hat27
KAFKA
IN PRODUCTION
Red Hat
Industries
28
➔ Travel companies
➔ Finance and fintech companies
➔ Retailers and online shopping
➔ Automotive and manufacturing companies
➔ Video Streaming companies
➔ Social networks
➔ Transportation
...
[ https://kafka.apache.org/powered-by]
Red Hat
Travel: Singapore Airlines
29
Problem:
Many
airplanes
Many components
per airplane
Each airplane
different
flight-plan
! Predictive maintenance is a hard !
Red Hat
Travel: Singapore Airlines
30
Solution:
Kafka
Connector
Kafka
Streams App ML model
Web App
Red Hat
Transportation: Uber
31
Problem:
Multiple
locations
Multiple riders Multiple drivers
All of this in real time…
… and if this sounds easy, let’s make fares
variable in real time as well!
Red Hat
Transportation: Uber
32
Solution:
Red Hat
Transportation: Uber
33
Speaking about Kafka scalability:
Trillions of
messages
per day
PBs of data Tens of
thousands of
topics
Red Hat
Finance: ING
34
https://www.slideshare.net/ConfluentInc/kafka-summit-nyc-2017-the-realtime-event-driven-bank-a-kafka-story?qid=39eb
618f-fdcc-4b26-bdbe-6de13b4e8d85&v=&b=&from_search=6
Challenges to traditional banks:
➔ Offering actionable insights in real time to customer
➔ Differentiating user experience
➔ Convergence of channels
➔ Make the insights personal
Red Hat
Finance: ING
35
Started with Fraud Detection process:
Red Hat
Finance: ING
36
Extended the architecture globally:
Red Hat
News: New York Times
37
Problems:
● Consumers need to know everything about Producers
● Producer API has to live forever
● Every API has a different information schema
● No easy way to read historical info in bulk
● Monoliths that tried to do everything for everyone
● Hard to develop new products and change old ones
Typical API oriented architecture
[ https://www.slideshare.net/ConfluentInc/apache-kafka-delivers-a-single-source-of-truth-for-the-new-york-times ]
Red Hat
News: New York Times
38
Solution:
[ https://www.slideshare.net/ConfluentInc/apache-kafka-delivers-a-single-source-of-truth-for-the-new-york-times ]
Red Hat
News: New York Times
39
Solution:
1. Log is the source of truth
2. All assets are protobuf binaries
3. Use a Monolog (single partition, completely ordered, infinite
retention
[ https://www.slideshare.net/ConfluentInc/apache-kafka-delivers-a-single-source-of-truth-for-the-new-york-times ]
Red Hat
Leisure: Tinder
40
Problems:
● Delayed notifications
● Scheduled content moderation
● Managing inactive users, likely to drop out
● Schedule feature drop correctly
Didn’t realize dating was so complex nowadays
Red Hat
Leisure: Tinder
41
Delayed
scheduling:
Red Hat
Leisure: Tinder
42
Content
moderation:
Red Hat
Leisure: Tinder
43
User
reactivation:
Red Hat44
KAFKA DEMO
Red Hat
3 microservices:
1. Order to create orders. This services sends messages to Kafka. It uses the
KafkaTemplate.
2. Shipment receives the orders and extract the information needed to ship the items.
3. Invoicing receives the messages, too. It extracts all information to send out an invoice.
It uses @KafkaListener just like Shipment.
How much Kafka do you want in your life?
45 [ https://github.com/ewolff/microservice-kafka ]
Red Hat46
SHORT SURVEY
Red Hat
http://tiny.cc/brvz6y
How much Kafka do you want in your life?
47
THANK YOU !
plus.google.com/+RedHat
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHatNews
48
1 de 48

Recomendados

APIdays Paris 2018 - Hack your legacy, from mutualism to Open Source! Chris W... por
APIdays Paris 2018 - Hack your legacy, from mutualism to Open Source! Chris W...APIdays Paris 2018 - Hack your legacy, from mutualism to Open Source! Chris W...
APIdays Paris 2018 - Hack your legacy, from mutualism to Open Source! Chris W...apidays
213 vistas42 diapositivas
APIdays Paris 2018 - Accelerate Innovation & Aircraft Production by using API... por
APIdays Paris 2018 - Accelerate Innovation & Aircraft Production by using API...APIdays Paris 2018 - Accelerate Innovation & Aircraft Production by using API...
APIdays Paris 2018 - Accelerate Innovation & Aircraft Production by using API...apidays
234 vistas12 diapositivas
Big Data Europe: Simplifying Development and Deployment of Big Data Applications por
Big Data Europe: Simplifying Development and Deployment of Big Data ApplicationsBig Data Europe: Simplifying Development and Deployment of Big Data Applications
Big Data Europe: Simplifying Development and Deployment of Big Data ApplicationsBigData_Europe
1.3K vistas27 diapositivas
Open Source Geographic Information System at Orange, OW2online, June 2020 por
Open Source Geographic Information System at Orange, OW2online, June 2020Open Source Geographic Information System at Orange, OW2online, June 2020
Open Source Geographic Information System at Orange, OW2online, June 2020OW2
118 vistas12 diapositivas
Scylla Summit 2022: Scalable and Sustainable Supply Chains with DLT and ScyllaDB por
Scylla Summit 2022: Scalable and Sustainable Supply Chains with DLT and ScyllaDBScylla Summit 2022: Scalable and Sustainable Supply Chains with DLT and ScyllaDB
Scylla Summit 2022: Scalable and Sustainable Supply Chains with DLT and ScyllaDBScyllaDB
381 vistas17 diapositivas
Postgres Vision 2018: Will Postgres Live Forever? por
Postgres Vision 2018: Will Postgres Live Forever?Postgres Vision 2018: Will Postgres Live Forever?
Postgres Vision 2018: Will Postgres Live Forever?EDB
148 vistas44 diapositivas

Más contenido relacionado

Similar a Using Streaming APIs in Production

Austin API Summit 2018: Are REST APIs Still Relevant Today? por
Austin API Summit 2018: Are REST APIs Still Relevant Today?Austin API Summit 2018: Are REST APIs Still Relevant Today?
Austin API Summit 2018: Are REST APIs Still Relevant Today?LaunchAny
528 vistas50 diapositivas
Are REST APIs Still Relevant Today? por
Are REST APIs Still Relevant Today?Are REST APIs Still Relevant Today?
Are REST APIs Still Relevant Today?Nordic APIs
92 vistas50 diapositivas
The Rise Of Event Streaming – Why Apache Kafka Changes Everything por
The Rise Of Event Streaming – Why Apache Kafka Changes EverythingThe Rise Of Event Streaming – Why Apache Kafka Changes Everything
The Rise Of Event Streaming – Why Apache Kafka Changes EverythingKai Wähner
1.6K vistas52 diapositivas
Apache kafka event_streaming___kai_waehner por
Apache kafka event_streaming___kai_waehnerApache kafka event_streaming___kai_waehner
Apache kafka event_streaming___kai_waehnerconfluent
284 vistas52 diapositivas
Couchbase Cloud No Equal (Rick Jacobs, Couchbase) Kafka Summit 2020 por
Couchbase Cloud No Equal (Rick Jacobs, Couchbase) Kafka Summit 2020Couchbase Cloud No Equal (Rick Jacobs, Couchbase) Kafka Summit 2020
Couchbase Cloud No Equal (Rick Jacobs, Couchbase) Kafka Summit 2020HostedbyConfluent
395 vistas29 diapositivas
Bridge to Cloud: Using Apache Kafka to Migrate to GCP por
Bridge to Cloud: Using Apache Kafka to Migrate to GCPBridge to Cloud: Using Apache Kafka to Migrate to GCP
Bridge to Cloud: Using Apache Kafka to Migrate to GCPconfluent
5.2K vistas64 diapositivas

Similar a Using Streaming APIs in Production(20)

Austin API Summit 2018: Are REST APIs Still Relevant Today? por LaunchAny
Austin API Summit 2018: Are REST APIs Still Relevant Today?Austin API Summit 2018: Are REST APIs Still Relevant Today?
Austin API Summit 2018: Are REST APIs Still Relevant Today?
LaunchAny528 vistas
Are REST APIs Still Relevant Today? por Nordic APIs
Are REST APIs Still Relevant Today?Are REST APIs Still Relevant Today?
Are REST APIs Still Relevant Today?
Nordic APIs92 vistas
The Rise Of Event Streaming – Why Apache Kafka Changes Everything por Kai Wähner
The Rise Of Event Streaming – Why Apache Kafka Changes EverythingThe Rise Of Event Streaming – Why Apache Kafka Changes Everything
The Rise Of Event Streaming – Why Apache Kafka Changes Everything
Kai Wähner1.6K vistas
Apache kafka event_streaming___kai_waehner por confluent
Apache kafka event_streaming___kai_waehnerApache kafka event_streaming___kai_waehner
Apache kafka event_streaming___kai_waehner
confluent284 vistas
Couchbase Cloud No Equal (Rick Jacobs, Couchbase) Kafka Summit 2020 por HostedbyConfluent
Couchbase Cloud No Equal (Rick Jacobs, Couchbase) Kafka Summit 2020Couchbase Cloud No Equal (Rick Jacobs, Couchbase) Kafka Summit 2020
Couchbase Cloud No Equal (Rick Jacobs, Couchbase) Kafka Summit 2020
HostedbyConfluent395 vistas
Bridge to Cloud: Using Apache Kafka to Migrate to GCP por confluent
Bridge to Cloud: Using Apache Kafka to Migrate to GCPBridge to Cloud: Using Apache Kafka to Migrate to GCP
Bridge to Cloud: Using Apache Kafka to Migrate to GCP
confluent5.2K vistas
Qlik and Confluent Success Stories with Kafka - How Generali and Skechers Kee... por HostedbyConfluent
Qlik and Confluent Success Stories with Kafka - How Generali and Skechers Kee...Qlik and Confluent Success Stories with Kafka - How Generali and Skechers Kee...
Qlik and Confluent Success Stories with Kafka - How Generali and Skechers Kee...
HostedbyConfluent378 vistas
Simplifying and Future-Proofing Hadoop por Precisely
Simplifying and Future-Proofing HadoopSimplifying and Future-Proofing Hadoop
Simplifying and Future-Proofing Hadoop
Precisely413 vistas
VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim... por VoltDB
VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...
VoltDB and Flytxt Present: Building a Single Technology Platform for Real-Tim...
VoltDB1.4K vistas
A Snapshot of API Design Trends In 2019 por Bill Doerrfeld
A Snapshot of API Design Trends In 2019A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019
Bill Doerrfeld921 vistas
API Management Within a Microservices Architecture por Nadeesha Gamage
API Management Within a Microservices Architecture API Management Within a Microservices Architecture
API Management Within a Microservices Architecture
Nadeesha Gamage332 vistas
API Management within a Microservice Architecture por WSO2
API Management within a Microservice ArchitectureAPI Management within a Microservice Architecture
API Management within a Microservice Architecture
WSO22.8K vistas
Datenstrategie der Zukunft - Technologietrends, die Sie kennen müssen por Denodo
Datenstrategie der Zukunft - Technologietrends, die Sie kennen müssenDatenstrategie der Zukunft - Technologietrends, die Sie kennen müssen
Datenstrategie der Zukunft - Technologietrends, die Sie kennen müssen
Denodo 127 vistas
The 3 pillars of agile integration: Container, Connector and API por Judy Breedlove
The 3 pillars of agile integration:  Container, Connector and APIThe 3 pillars of agile integration:  Container, Connector and API
The 3 pillars of agile integration: Container, Connector and API
Judy Breedlove1.1K vistas
Scylla Summit 2022: An Odyssey to ScyllaDB and Apache Kafka por ScyllaDB
Scylla Summit 2022: An Odyssey to ScyllaDB and Apache KafkaScylla Summit 2022: An Odyssey to ScyllaDB and Apache Kafka
Scylla Summit 2022: An Odyssey to ScyllaDB and Apache Kafka
ScyllaDB368 vistas
Eliminating Volatile Latencies Inside Rakuten’s NoSQL Migration por ScyllaDB
Eliminating  Volatile Latencies Inside Rakuten’s NoSQL MigrationEliminating  Volatile Latencies Inside Rakuten’s NoSQL Migration
Eliminating Volatile Latencies Inside Rakuten’s NoSQL Migration
ScyllaDB623 vistas
WSO2 User Group Bangalore Meetup por WSO2
WSO2 User Group Bangalore MeetupWSO2 User Group Bangalore Meetup
WSO2 User Group Bangalore Meetup
WSO2173 vistas
Потоковая обработка больших данных por CEE-SEC(R)
Потоковая обработка больших данныхПотоковая обработка больших данных
Потоковая обработка больших данных
CEE-SEC(R)748 vistas
Building an Architecture for Continous Innovation por andreas kuncoro
Building an Architecture for Continous InnovationBuilding an Architecture for Continous Innovation
Building an Architecture for Continous Innovation
andreas kuncoro111 vistas

Más de Luca Mattia Ferrari

Meetup 2023 - Gateway API.pdf por
Meetup 2023 - Gateway API.pdfMeetup 2023 - Gateway API.pdf
Meetup 2023 - Gateway API.pdfLuca Mattia Ferrari
12 vistas36 diapositivas
Meetup 2022 - APIs with Quarkus.pdf por
Meetup 2022 - APIs with Quarkus.pdfMeetup 2022 - APIs with Quarkus.pdf
Meetup 2022 - APIs with Quarkus.pdfLuca Mattia Ferrari
27 vistas23 diapositivas
Meetup 2022 - API Gateway landscape.pdf por
Meetup 2022 - API Gateway landscape.pdfMeetup 2022 - API Gateway landscape.pdf
Meetup 2022 - API Gateway landscape.pdfLuca Mattia Ferrari
46 vistas28 diapositivas
APIs at the Edge por
APIs at the EdgeAPIs at the Edge
APIs at the EdgeLuca Mattia Ferrari
17 vistas46 diapositivas
Opa in the api management world por
Opa in the api management worldOpa in the api management world
Opa in the api management worldLuca Mattia Ferrari
144 vistas40 diapositivas
How easy (or hard) it is to monitor your graph ql service performance por
How easy (or hard) it is to monitor your graph ql service performanceHow easy (or hard) it is to monitor your graph ql service performance
How easy (or hard) it is to monitor your graph ql service performanceLuca Mattia Ferrari
140 vistas35 diapositivas

Más de Luca Mattia Ferrari(20)

How easy (or hard) it is to monitor your graph ql service performance por Luca Mattia Ferrari
How easy (or hard) it is to monitor your graph ql service performanceHow easy (or hard) it is to monitor your graph ql service performance
How easy (or hard) it is to monitor your graph ql service performance
Luca Mattia Ferrari140 vistas
Leverage event streaming framework to build intelligent applications por Luca Mattia Ferrari
Leverage event streaming framework to build intelligent applicationsLeverage event streaming framework to build intelligent applications
Leverage event streaming framework to build intelligent applications
statement of accomplishment - heterogeneous parallel programming por Luca Mattia Ferrari
statement of accomplishment - heterogeneous parallel programmingstatement of accomplishment - heterogeneous parallel programming
statement of accomplishment - heterogeneous parallel programming
Luca Mattia Ferrari239 vistas

Último

2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx por
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptxanimuscrm
14 vistas19 diapositivas
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... por
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...Marc Müller
38 vistas62 diapositivas
SAP FOR CONTRACT MANUFACTURING.pdf por
SAP FOR CONTRACT MANUFACTURING.pdfSAP FOR CONTRACT MANUFACTURING.pdf
SAP FOR CONTRACT MANUFACTURING.pdfVirendra Rai, PMP
13 vistas2 diapositivas
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports por
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsBushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsRa'Fat Al-Msie'deen
8 vistas49 diapositivas
Copilot Prompting Toolkit_All Resources.pdf por
Copilot Prompting Toolkit_All Resources.pdfCopilot Prompting Toolkit_All Resources.pdf
Copilot Prompting Toolkit_All Resources.pdfRiccardo Zamana
8 vistas4 diapositivas
Fleet Management Software in India por
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India Fleetable
11 vistas1 diapositiva

Último(20)

2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx por animuscrm
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
animuscrm14 vistas
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... por Marc Müller
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
Marc Müller38 vistas
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports por Ra'Fat Al-Msie'deen
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug ReportsBushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
BushraDBR: An Automatic Approach to Retrieving Duplicate Bug Reports
Copilot Prompting Toolkit_All Resources.pdf por Riccardo Zamana
Copilot Prompting Toolkit_All Resources.pdfCopilot Prompting Toolkit_All Resources.pdf
Copilot Prompting Toolkit_All Resources.pdf
Riccardo Zamana8 vistas
Fleet Management Software in India por Fleetable
Fleet Management Software in India Fleet Management Software in India
Fleet Management Software in India
Fleetable11 vistas
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols por Deltares
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - DolsDSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols
Deltares7 vistas
FOSSLight Community Day 2023-11-30 por Shane Coughlan
FOSSLight Community Day 2023-11-30FOSSLight Community Day 2023-11-30
FOSSLight Community Day 2023-11-30
Shane Coughlan5 vistas
tecnologia18.docx por nosi6702
tecnologia18.docxtecnologia18.docx
tecnologia18.docx
nosi67025 vistas
SUGCON ANZ Presentation V2.1 Final.pptx por Jack Spektor
SUGCON ANZ Presentation V2.1 Final.pptxSUGCON ANZ Presentation V2.1 Final.pptx
SUGCON ANZ Presentation V2.1 Final.pptx
Jack Spektor22 vistas
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action por Márton Kodok
Gen Apps on Google Cloud PaLM2 and Codey APIs in ActionGen Apps on Google Cloud PaLM2 and Codey APIs in Action
Gen Apps on Google Cloud PaLM2 and Codey APIs in Action
Márton Kodok5 vistas
Sprint 226 por ManageIQ
Sprint 226Sprint 226
Sprint 226
ManageIQ5 vistas
Navigating container technology for enhanced security by Niklas Saari por Metosin Oy
Navigating container technology for enhanced security by Niklas SaariNavigating container technology for enhanced security by Niklas Saari
Navigating container technology for enhanced security by Niklas Saari
Metosin Oy14 vistas
DSD-INT 2023 The Danube Hazardous Substances Model - Kovacs por Deltares
DSD-INT 2023 The Danube Hazardous Substances Model - KovacsDSD-INT 2023 The Danube Hazardous Substances Model - Kovacs
DSD-INT 2023 The Danube Hazardous Substances Model - Kovacs
Deltares8 vistas
Headless JS UG Presentation.pptx por Jack Spektor
Headless JS UG Presentation.pptxHeadless JS UG Presentation.pptx
Headless JS UG Presentation.pptx
Jack Spektor7 vistas
Team Transformation Tactics for Holistic Testing and Quality (Japan Symposium... por Lisi Hocke
Team Transformation Tactics for Holistic Testing and Quality (Japan Symposium...Team Transformation Tactics for Holistic Testing and Quality (Japan Symposium...
Team Transformation Tactics for Holistic Testing and Quality (Japan Symposium...
Lisi Hocke30 vistas

Using Streaming APIs in Production