SlideShare ist ein Scribd-Unternehmen logo
1 von 81
Downloaden Sie, um offline zu lesen
Demystifying Kafka
By :

Nakul Mishra
“If you are not afraid of going deep, you will have no fear of heights either”
#DevoxxBE @nklmish
Do you Like Lego?
Simplicity is the Key to complexity
#DevoxxPL @nklmish#DevoxxBE @nklmish
#DevoxxPL @nklmish
You build complex system
#DevoxxBE @nklmish
Starting with a simple idea
#DevoxxPL @nklmish#DevoxxBE @nklmish
Traditional Messaging + Distributed System ≠ Best Idea
#DevoxxPL @nklmish#DevoxxBE @nklmish
#DevoxxPL @nklmish
Three challenges
#DevoxxBE @nklmish
Scalability
#DevoxxPL @nklmish#DevoxxBE @nklmish
Throughput
#DevoxxPL @nklmish#DevoxxBE @nklmish
Resiliency
#DevoxxPL @nklmish#DevoxxBE @nklmish
Why Kafka?
#DevoxxPL @nklmish#DevoxxBE @nklmish
#DevoxxPL @nklmish#DevoxxBE @nklmish
• Support both Point-to-point & publish-subscribe (consumer group generalises
this concept).
Kafka - more than a message queue
#DevoxxPL @nklmish
Each topic in Kafka has its own journal
#DevoxxBE @nklmish
Producer
Support both Point-to-point & publish-subscribe
Partition-0 Partition-1 Partition-2
#DevoxxPL @nklmish#DevoxxBE @nklmish
Support both Point-to-point & publish-subscribe
Rolling log files
Producer
Partition-0 Partition-1 Partition-2
#DevoxxPL @nklmish#DevoxxBE @nklmish
Support both Point-to-point & publish-subscribe
#DevoxxPL @nklmish#DevoxxBE @nklmish
• Support both Point-to-point & publish-subscribe (consumer group generalises
this concept).

• Highly Scalable, available & durable.

• Kafka Connect interface - pull & push for data.

• Architecture inherits more from storage system like HBase, Cassandra, HDFS

vs traditional message system.

• Stronger ordering guarantees than a traditional messaging system
Kafka - more than a message queue
[1]: New Relic 15 million messages/sec
[2]: LinkedIn 1.1 Trillion messages/day
[3]: Netflix 2 Trillion messages/day at Peak
#DevoxxPL @nklmish#DevoxxBE @nklmish
Ordering guarantees, traditional messaging system
R0 R1 R2 R3 …
C0
C1
C2
Parallelconsumption
Server side: Queue retains records in-order on the server
Async delivery
R0, t=1
R2, t=2
R1, t=0
M
essaging
system
solves
this
using
“exclusive
consum
er”
Kafka is better than MOM
#DevoxxPL @nklmish#DevoxxBE @nklmish
I didn’t mean my Mom ;)
#DevoxxPL @nklmish#DevoxxBE @nklmish
#DevoxxPL @nklmish#DevoxxBE @nklmish
MOM vs.
Kafka
Broker Centric Approach Client Centric Approach
Index structures (Btree or Hash Tables) Log structured
Retention impacts performance Designed for Retention
Outrage: Significant slow down
Outrage: won’t cause infrastructure to 

slow down significantly
[1]: Large Queue Depth & Performance Problem
How Kafka?
#DevoxxPL @nklmish#DevoxxBE @nklmish
“Immutability changes everything”
- Pat Helland
#DevoxxPL @nklmish#DevoxxBE @nklmish
“If simplicity is the soul of efficiency than Immutability must be the body”
#DevoxxPL @nklmish#DevoxxBE @nklmish
#DevoxxPL @nklmish#DevoxxBE @nklmish
Log Structure
Log (append only journal)
Writes (Append only)
Reads (single seek & scan)
#DevoxxBE @nklmish
#DevoxxPL @nklmish
Scalability - comes from Log
#DevoxxBE @nklmish
C1
#DevoxxPL @nklmish
Parallel Consumption - comes from Log
#DevoxxBE @nklmish
Partition-0
Partition-1
Payment topic
Payment-consumer-group
C1
#DevoxxPL @nklmish#DevoxxBE @nklmish
Partition-0
Partition-1
Payment topic
Payment-consumer-group
C2
Parallel Consumption - comes from Log
C1
#DevoxxPL @nklmish#DevoxxBE @nklmish
Partition-0
Partition-1
Payment topic
Payment-consumer-group
C2
Partition-2
Parallel Consumption - comes from Log
#DevoxxPL @nklmish#DevoxxBE @nklmish
• Doesn’t :

• Even import them in JVM

• Buffer messages to user space

• Kernel level IO, copies directly from disk buffer to socket
Java#transferTo
Massive throughput - comes from Log
#DevoxxPL @nklmish#DevoxxBE @nklmish
• OS read-ahead cache is impressive.

• Stays nice & warm even if the service is restarted.
Caching - comes from OS
Exactly Once Processing, comes from Kafka Transaction
BankTransfer

Service
X
Consume
Y
Produce
#DevoxxPL @nklmish
Exactly once delivery, definitive design
#DevoxxBE @nklmish
KIP-101
KIP-98
#DevoxxPL @nklmish
Duplication Source?
#DevoxxBE @nklmish
Producer
Send
#DevoxxPL @nklmish
Duplication Source?
#DevoxxBE @nklmish
Producer
Send
Network problem (Acknowledgment error)
#DevoxxPL @nklmish
Duplication Source?
#DevoxxBE @nklmish
Idempotent producer , solves this
ProducerResend
dups
Send
#DevoxxPL @nklmish
Duplication Source?
#DevoxxBE @nklmish
Consumer
Fetch
ProducerResend
dups
Send
#DevoxxPL @nklmish
Duplication Source?
#DevoxxBE @nklmish
Consumer
Fetch
ProducerResend
dups
Send
Consumer crash, (Error committing offset)
#DevoxxPL @nklmish
Duplication Source?
#DevoxxBE @nklmish
Consumer
Fetch
ProducerResend
dups
Send
Fetch
dups
#DevoxxPL @nklmish
Chandy & Lampot, marker messages
#DevoxxBE @nklmish
Kafka Transaction
Producer
Transaction
Coordinator
#DevoxxPL @nklmish
A
Chandy & Lampot, marker messages
#DevoxxBE @nklmish
Kafka Transaction
Producer
Transaction
Coordinator
#DevoxxPL @nklmish
A
B
Tx-log
Chandy & Lampot, marker messages
#DevoxxBE @nklmish
Kafka Transaction
Producer
Transaction
Coordinator
(Internal-Kafka-topic), RF =3
init(t.id)
#DevoxxPL @nklmish
A
B
Tx-log
Chandy & Lampot, marker messages
#DevoxxBE @nklmish
Kafka Transaction
Producer
Transaction
Coordinator
(Internal-Kafka-topic), RF =3
init(t.id)
beginTransaction()
#DevoxxPL @nklmish
A
Data logs
B
C
Tx-log
Chandy & Lampot, marker messages
#DevoxxBE @nklmish
Kafka Transaction
m0
m1
m2
m3
m4
m5
m6
Producer
Transaction
Coordinator
init(t.id)
t.id -> ongoing
(Internal-Kafka-topic), RF =3
#DevoxxPL @nklmish
A
D
Data logs
B
C
Tx-log
Chandy & Lampot, marker messages
#DevoxxBE @nklmish
Kafka Transaction
m0
m1
C
m2
m3
m4
C
m5
m6
C
Producer
Transaction
Coordinator
init(t.id)
t.id -> ongoing
t.id -> prepare
t.id -> committed
(Internal-Kafka-topic), RF =3
#DevoxxPL @nklmish
A
D
Data logs
B
C
Tx-log
Chandy & Lampor, marker messages
#DevoxxBE @nklmish
Kafka Transaction
m0
m1
C
m2
m3
m4
C
m5
m6
C
Producer
Transaction
Coordinator
init(t.id)
t.id -> ongoing
t.id -> prepare
t.id -> committed
Consum
er:
isolation.level =
read_com
m
itted
(Internal-Kafka-topic), RF =3
#DevoxxPL @nklmish#DevoxxBE @nklmish
• Rock solid replication protocol and leader election process.

• Relies on Replication to avoid sync calls!!
Resiliency - comes from Replication
[1]: PacificA
#DevoxxPL @nklmish
Filesystem writes 

“foo” to disk
Hard disk
#DevoxxBE @nklmish
Write path
#DevoxxPL @nklmish
Buffer Cache
Written to
Hard disk
#DevoxxBE @nklmish
Filesystem 

writes “Foo”
to disk
Caches
Write path
#DevoxxPL @nklmish
Buffer Cache
Filesystem 

writes “Foo”
to disk
Written to
Disk drive
controller
cache
Moves to
Caches
Hard disk
#DevoxxBE @nklmish
Write path
#DevoxxPL @nklmish
Buffer Cache
Filesystem 

writes “Foo”
to disk
Written to
Disk drive
controller
cache
Moves to
Caches
Disk Caches
Moves to
Hard disk
#DevoxxBE @nklmish
Write path
#DevoxxPL @nklmish
Buffer Cache
Filesystem 

writes “Foo”
to disk
Written to
Disk drive
controller
cache
Moves to
Caches
Hardware-level cache 

(write-through or write-back)
Disk Caches
Hard disk
Moves to
#DevoxxBE @nklmish
Write path
#DevoxxPL @nklmish
Buffer Cache
Filesystem 

writes “Foo”
to disk
Written to
Disk drive
controller
cache
Moves to
Caches
Hardware-level cache 

(write-through or write-back)
Disk Caches
Moves to
Finally
written
to disk
Hard disk
#DevoxxBE @nklmish
Write path
Replication
P0 P0 P0
Kafka cluster
Leader
A B C
Kafka partition == Replicated Log
#DevoxxBE @nklmish
Producer
P0
Replication
P0 P0 P0
Kafka cluster
Leader
A B C
Kafka partition == Replicated Log
Partition: P0

Leader: A
ISR: [B, C]
#DevoxxBE @nklmish
Producer
P0
Replication
P0 P0 P0
Kafka cluster
Leader
A B C
Kafka partition == Replicated Log
Partition: P0

Leader: A
ISR: [B, C]
#DevoxxBE @nklmish
Producer
P0
Slow
Replication
P0 P0 P0
Kafka cluster
Leader
A B C
Kafka partition == Replicated Log
Partition: P0

Leader: A
ISR: [B]
#DevoxxBE @nklmish
Producer
P0
Slow
Replication
P0
P1
P0
P1
P0
P1
Kafka cluster
Leader
Broker-0 Broker-1 Broker-2
Kafka partition == Replicated Log
Partition: P0

Leader: Broker-0
#DevoxxBE @nklmish
Producer
P1
Replication
P0
P1
P0
P1
P0
P1
Kafka cluster
Leader
Broker-0 Broker-1 Broker-2
Kafka partition == Replicated Log
Partition: P0

Leader: Broker-0
#DevoxxBE @nklmish
Producer
Partition: P1

Leader: Broker-1
Replication
P0
P1
P2
P0
P1
P2
P0
P1
P2
Kafka cluster
Leader
Broker-0 Broker-1 Broker-2
Kafka partition == Replicated Log
Partition: P0

Leader: Broker-0
#DevoxxBE @nklmish
Producer
Partition: P1

Leader: Broker-1
Partition: P2

Leader: Broker-2
#DevoxxPL @nklmish
Kafka & Event sourcing?
#DevoxxBE @nklmish
#DevoxxPL @nklmish#DevoxxBE @nklmish
Events ordering - send to same partition (aggregate Identifier).

Events replay - Log (replayable) 

Data Retention & Durability

Event store & projections - let’s find out
Kafka - for event sourcing ?
Event store ?
#DevoxxPL @nklmish#DevoxxBE @nklmish
Event Store
#DevoxxPL @nklmish
Time
#DevoxxBE @nklmish
Event Store
#DevoxxPL @nklmish
Time
#DevoxxBE @nklmish
Event Store
#DevoxxPL @nklmish
Time
#DevoxxBE @nklmish
Event Store
#DevoxxPL @nklmish
Time
#DevoxxBE @nklmish
Event Store
#DevoxxPL @nklmish
Time
#DevoxxBE @nklmish
Event Store
#DevoxxPL @nklmish
validate sequence number
Time
#DevoxxBE @nklmish
Event Store - Load aggregate
#DevoxxPL @nklmish
Time
#DevoxxBE @nklmish
#DevoxxPL @nklmish
Time
Event Store - Load aggregate
#DevoxxBE @nklmish
#DevoxxPL @nklmish
Event Store - aggregate loaded
#DevoxxBE @nklmish
What’s missing
#DevoxxPL @nklmish
• Identity & Concurrency Control

• Load efficiently events for specific aggregates
#DevoxxBE @nklmish
}No builtin support in Kafka, but…
#DevoxxPL @nklmish
Kafka, a database inside out
Kafka
Commit Log
Stream
Processor
KSQ
L
Kafka
Indexes
Commit log
Query engine
Caching
Traditional database
#DevoxxBE @nklmish
#DevoxxPL @nklmish#DevoxxBE @nklmish
• Following options:

• Optimistic concurrency control 

• Single write principle
Identity & concurrency control
#DevoxxPL @nklmish#DevoxxBE @nklmish
• Kafka Streams
Aggregates & Projections
Business logic
Kafka Stream
WalletService
Kafka Streams
#DevoxxBE @nklmish
Bob:+100 Doe:-100 Bob:+200 Bob:+400 Lee:+400 Bob:-200 Jen:+200 Doe:+200 Jen:+100
1. Default state store, rockDB

2. Local writes to event store -> pushed back to Kafka
State store
#DevoxxPL @nklmish#DevoxxBE @nklmish
• Be conscious, when setting deletion policy -> (Integer.MAX_VALUE) is not good ;)

• Shared storage, remember neighbours can be chatty.

• Avoid network throttling & instability, enforce Quotas. 

• Adding new broker != automatic data partitions assignment for existing topic,
use bin/kafka-reassign-partitions.sh

• Aggregate (Stateful processing)-> use compacted topic -> avoid loading whole
versioned history.

• Slow controlled shutdown, don’t use kill command -> upgrade to Kafka 1.1.0 :)
What we learned in the process?
#DevoxxPL @nklmish#DevoxxBE @nklmish
• Kafka is always on

• Designed from ground up for distributed world

• Kafka - a database inside out

• Its fun to play lego
How Kafka helped us go through the 3 challenges?
#DevoxxPL @nklmish#DevoxxBE @nklmish

Weitere ähnliche Inhalte

Was ist angesagt?

Less js-&-wp
Less js-&-wpLess js-&-wp
Less js-&-wprfair404
 
How Elixir helped us scale our Video User Profile Service for the Olympics
How Elixir helped us scale our Video User Profile Service for the OlympicsHow Elixir helped us scale our Video User Profile Service for the Olympics
How Elixir helped us scale our Video User Profile Service for the OlympicsEmerson Macedo
 
Scaling your apps with Kubernetes and Docker - TheConf 2018
Scaling your apps with Kubernetes and Docker - TheConf 2018Scaling your apps with Kubernetes and Docker - TheConf 2018
Scaling your apps with Kubernetes and Docker - TheConf 2018Erick Wendel
 
Using Postman to Automate API On-Boarding
Using Postman to Automate API On-BoardingUsing Postman to Automate API On-Boarding
Using Postman to Automate API On-BoardingPostman
 
Build Your Own Real-Time Web Service with Elixir Phoenix
Build Your Own Real-Time Web Service with Elixir PhoenixBuild Your Own Real-Time Web Service with Elixir Phoenix
Build Your Own Real-Time Web Service with Elixir PhoenixChi-chi Ekweozor
 
Chef Delivery
Chef DeliveryChef Delivery
Chef DeliveryChef
 
Scaling Machine Learning Systems up to Billions of Predictions per Day
Scaling Machine Learning Systems up to Billions of Predictions per DayScaling Machine Learning Systems up to Billions of Predictions per Day
Scaling Machine Learning Systems up to Billions of Predictions per DayCarmine Paolino
 
Morning at Lohika - Spring Boot Kotlin, a match made in Heaven
Morning at Lohika - Spring Boot Kotlin, a match made in HeavenMorning at Lohika - Spring Boot Kotlin, a match made in Heaven
Morning at Lohika - Spring Boot Kotlin, a match made in HeavenNicolas Fränkel
 
The dev ops code has no servers
The dev ops code has no serversThe dev ops code has no servers
The dev ops code has no serversEd Anderson
 
An Introduction to React -- FED Date -- IBM Design
An Introduction to React -- FED Date -- IBM DesignAn Introduction to React -- FED Date -- IBM Design
An Introduction to React -- FED Date -- IBM DesignJosh Black
 

Was ist angesagt? (11)

Less js-&-wp
Less js-&-wpLess js-&-wp
Less js-&-wp
 
React Component Wars
React Component WarsReact Component Wars
React Component Wars
 
How Elixir helped us scale our Video User Profile Service for the Olympics
How Elixir helped us scale our Video User Profile Service for the OlympicsHow Elixir helped us scale our Video User Profile Service for the Olympics
How Elixir helped us scale our Video User Profile Service for the Olympics
 
Scaling your apps with Kubernetes and Docker - TheConf 2018
Scaling your apps with Kubernetes and Docker - TheConf 2018Scaling your apps with Kubernetes and Docker - TheConf 2018
Scaling your apps with Kubernetes and Docker - TheConf 2018
 
Using Postman to Automate API On-Boarding
Using Postman to Automate API On-BoardingUsing Postman to Automate API On-Boarding
Using Postman to Automate API On-Boarding
 
Build Your Own Real-Time Web Service with Elixir Phoenix
Build Your Own Real-Time Web Service with Elixir PhoenixBuild Your Own Real-Time Web Service with Elixir Phoenix
Build Your Own Real-Time Web Service with Elixir Phoenix
 
Chef Delivery
Chef DeliveryChef Delivery
Chef Delivery
 
Scaling Machine Learning Systems up to Billions of Predictions per Day
Scaling Machine Learning Systems up to Billions of Predictions per DayScaling Machine Learning Systems up to Billions of Predictions per Day
Scaling Machine Learning Systems up to Billions of Predictions per Day
 
Morning at Lohika - Spring Boot Kotlin, a match made in Heaven
Morning at Lohika - Spring Boot Kotlin, a match made in HeavenMorning at Lohika - Spring Boot Kotlin, a match made in Heaven
Morning at Lohika - Spring Boot Kotlin, a match made in Heaven
 
The dev ops code has no servers
The dev ops code has no serversThe dev ops code has no servers
The dev ops code has no servers
 
An Introduction to React -- FED Date -- IBM Design
An Introduction to React -- FED Date -- IBM DesignAn Introduction to React -- FED Date -- IBM Design
An Introduction to React -- FED Date -- IBM Design
 

Ähnlich wie Demystifying Kafka

Your Goat Antifragiled My Snowflake!: Demystifying DevOps Jargon - ChefConf 2015
Your Goat Antifragiled My Snowflake!: Demystifying DevOps Jargon - ChefConf 2015Your Goat Antifragiled My Snowflake!: Demystifying DevOps Jargon - ChefConf 2015
Your Goat Antifragiled My Snowflake!: Demystifying DevOps Jargon - ChefConf 2015Chef
 
10 Lessons Learned from using Kafka with 1000 microservices - java global summit
10 Lessons Learned from using Kafka with 1000 microservices - java global summit10 Lessons Learned from using Kafka with 1000 microservices - java global summit
10 Lessons Learned from using Kafka with 1000 microservices - java global summitNatan Silnitsky
 
Kafka Streams: The Stream Processing Engine of Apache Kafka
Kafka Streams: The Stream Processing Engine of Apache KafkaKafka Streams: The Stream Processing Engine of Apache Kafka
Kafka Streams: The Stream Processing Engine of Apache KafkaEno Thereska
 
DevoxxFR 2016 - 3 degrees of MoM
DevoxxFR 2016 - 3 degrees of MoMDevoxxFR 2016 - 3 degrees of MoM
DevoxxFR 2016 - 3 degrees of MoMGuillaume Arnaud
 
8 Lessons Learned from Using Kafka in 1500 microservices - confluent streamin...
8 Lessons Learned from Using Kafka in 1500 microservices - confluent streamin...8 Lessons Learned from Using Kafka in 1500 microservices - confluent streamin...
8 Lessons Learned from Using Kafka in 1500 microservices - confluent streamin...Natan Silnitsky
 
8 Lessons Learned from Using Kafka in 1000 Scala microservices - Scale by the...
8 Lessons Learned from Using Kafka in 1000 Scala microservices - Scale by the...8 Lessons Learned from Using Kafka in 1000 Scala microservices - Scale by the...
8 Lessons Learned from Using Kafka in 1000 Scala microservices - Scale by the...Natan Silnitsky
 
What is Apache Kafka®?
What is Apache Kafka®?What is Apache Kafka®?
What is Apache Kafka®?Eventador
 
What is apache Kafka?
What is apache Kafka?What is apache Kafka?
What is apache Kafka?Kenny Gorman
 
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017Monal Daxini
 
Apache cassandra en production - devoxx 2017
Apache cassandra en production  - devoxx 2017Apache cassandra en production  - devoxx 2017
Apache cassandra en production - devoxx 2017Alexander DEJANOVSKI
 
Continuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeedContinuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeedAxel Fontaine
 
Akka-chan's Survival Guide for the Streaming World
Akka-chan's Survival Guide for the Streaming WorldAkka-chan's Survival Guide for the Streaming World
Akka-chan's Survival Guide for the Streaming WorldKonrad Malawski
 
14th Athens Big Data Meetup - Landoop Workshop - Apache Kafka Entering The St...
14th Athens Big Data Meetup - Landoop Workshop - Apache Kafka Entering The St...14th Athens Big Data Meetup - Landoop Workshop - Apache Kafka Entering The St...
14th Athens Big Data Meetup - Landoop Workshop - Apache Kafka Entering The St...Athens Big Data
 
Exactly Once Delivery is a Harsh Mistress - Natan Silnitsky
Exactly Once Delivery is a Harsh Mistress  - Natan SilnitskyExactly Once Delivery is a Harsh Mistress  - Natan Silnitsky
Exactly Once Delivery is a Harsh Mistress - Natan SilnitskyDevOpsDays Tel Aviv
 
Exactly once delivery is a harsh mistress - DevOps Days TLV
Exactly once delivery is a harsh mistress - DevOps Days TLVExactly once delivery is a harsh mistress - DevOps Days TLV
Exactly once delivery is a harsh mistress - DevOps Days TLVNatan Silnitsky
 
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...StreamNative
 
Build a ChatBot in 10 minutes!
Build a ChatBot in 10 minutes!Build a ChatBot in 10 minutes!
Build a ChatBot in 10 minutes!Dave Kerr
 
Build a Chatbot in Ten Minutes - Dave Kerr - Serverless Summit
Build a Chatbot in Ten Minutes - Dave Kerr - Serverless SummitBuild a Chatbot in Ten Minutes - Dave Kerr - Serverless Summit
Build a Chatbot in Ten Minutes - Dave Kerr - Serverless SummitCodeOps Technologies LLP
 
Can Kafka Handle a Lyft Ride? (Andrey Falko & Can Cecen, Lyft) Kafka Summit 2020
Can Kafka Handle a Lyft Ride? (Andrey Falko & Can Cecen, Lyft) Kafka Summit 2020Can Kafka Handle a Lyft Ride? (Andrey Falko & Can Cecen, Lyft) Kafka Summit 2020
Can Kafka Handle a Lyft Ride? (Andrey Falko & Can Cecen, Lyft) Kafka Summit 2020HostedbyConfluent
 
Kubernetes Operability Tooling (LEAP 2019)
Kubernetes Operability Tooling (LEAP 2019)Kubernetes Operability Tooling (LEAP 2019)
Kubernetes Operability Tooling (LEAP 2019)bridgetkromhout
 

Ähnlich wie Demystifying Kafka (20)

Your Goat Antifragiled My Snowflake!: Demystifying DevOps Jargon - ChefConf 2015
Your Goat Antifragiled My Snowflake!: Demystifying DevOps Jargon - ChefConf 2015Your Goat Antifragiled My Snowflake!: Demystifying DevOps Jargon - ChefConf 2015
Your Goat Antifragiled My Snowflake!: Demystifying DevOps Jargon - ChefConf 2015
 
10 Lessons Learned from using Kafka with 1000 microservices - java global summit
10 Lessons Learned from using Kafka with 1000 microservices - java global summit10 Lessons Learned from using Kafka with 1000 microservices - java global summit
10 Lessons Learned from using Kafka with 1000 microservices - java global summit
 
Kafka Streams: The Stream Processing Engine of Apache Kafka
Kafka Streams: The Stream Processing Engine of Apache KafkaKafka Streams: The Stream Processing Engine of Apache Kafka
Kafka Streams: The Stream Processing Engine of Apache Kafka
 
DevoxxFR 2016 - 3 degrees of MoM
DevoxxFR 2016 - 3 degrees of MoMDevoxxFR 2016 - 3 degrees of MoM
DevoxxFR 2016 - 3 degrees of MoM
 
8 Lessons Learned from Using Kafka in 1500 microservices - confluent streamin...
8 Lessons Learned from Using Kafka in 1500 microservices - confluent streamin...8 Lessons Learned from Using Kafka in 1500 microservices - confluent streamin...
8 Lessons Learned from Using Kafka in 1500 microservices - confluent streamin...
 
8 Lessons Learned from Using Kafka in 1000 Scala microservices - Scale by the...
8 Lessons Learned from Using Kafka in 1000 Scala microservices - Scale by the...8 Lessons Learned from Using Kafka in 1000 Scala microservices - Scale by the...
8 Lessons Learned from Using Kafka in 1000 Scala microservices - Scale by the...
 
What is Apache Kafka®?
What is Apache Kafka®?What is Apache Kafka®?
What is Apache Kafka®?
 
What is apache Kafka?
What is apache Kafka?What is apache Kafka?
What is apache Kafka?
 
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017
AWS Re-Invent 2017 Netflix Keystone SPaaS - Monal Daxini - Abd320 2017
 
Apache cassandra en production - devoxx 2017
Apache cassandra en production  - devoxx 2017Apache cassandra en production  - devoxx 2017
Apache cassandra en production - devoxx 2017
 
Continuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeedContinuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeed
 
Akka-chan's Survival Guide for the Streaming World
Akka-chan's Survival Guide for the Streaming WorldAkka-chan's Survival Guide for the Streaming World
Akka-chan's Survival Guide for the Streaming World
 
14th Athens Big Data Meetup - Landoop Workshop - Apache Kafka Entering The St...
14th Athens Big Data Meetup - Landoop Workshop - Apache Kafka Entering The St...14th Athens Big Data Meetup - Landoop Workshop - Apache Kafka Entering The St...
14th Athens Big Data Meetup - Landoop Workshop - Apache Kafka Entering The St...
 
Exactly Once Delivery is a Harsh Mistress - Natan Silnitsky
Exactly Once Delivery is a Harsh Mistress  - Natan SilnitskyExactly Once Delivery is a Harsh Mistress  - Natan Silnitsky
Exactly Once Delivery is a Harsh Mistress - Natan Silnitsky
 
Exactly once delivery is a harsh mistress - DevOps Days TLV
Exactly once delivery is a harsh mistress - DevOps Days TLVExactly once delivery is a harsh mistress - DevOps Days TLV
Exactly once delivery is a harsh mistress - DevOps Days TLV
 
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...
 
Build a ChatBot in 10 minutes!
Build a ChatBot in 10 minutes!Build a ChatBot in 10 minutes!
Build a ChatBot in 10 minutes!
 
Build a Chatbot in Ten Minutes - Dave Kerr - Serverless Summit
Build a Chatbot in Ten Minutes - Dave Kerr - Serverless SummitBuild a Chatbot in Ten Minutes - Dave Kerr - Serverless Summit
Build a Chatbot in Ten Minutes - Dave Kerr - Serverless Summit
 
Can Kafka Handle a Lyft Ride? (Andrey Falko & Can Cecen, Lyft) Kafka Summit 2020
Can Kafka Handle a Lyft Ride? (Andrey Falko & Can Cecen, Lyft) Kafka Summit 2020Can Kafka Handle a Lyft Ride? (Andrey Falko & Can Cecen, Lyft) Kafka Summit 2020
Can Kafka Handle a Lyft Ride? (Andrey Falko & Can Cecen, Lyft) Kafka Summit 2020
 
Kubernetes Operability Tooling (LEAP 2019)
Kubernetes Operability Tooling (LEAP 2019)Kubernetes Operability Tooling (LEAP 2019)
Kubernetes Operability Tooling (LEAP 2019)
 

Mehr von nklmish

Scaling CQRS in theory, practice, and reality
Scaling CQRS in theory, practice, and realityScaling CQRS in theory, practice, and reality
Scaling CQRS in theory, practice, and realitynklmish
 
(SPRING)KAFKA - ONE MORE ARSENAL IN A DISTRIBUTED TOOLBOX
(SPRING)KAFKA - ONE MORE ARSENAL IN A DISTRIBUTED TOOLBOX(SPRING)KAFKA - ONE MORE ARSENAL IN A DISTRIBUTED TOOLBOX
(SPRING)KAFKA - ONE MORE ARSENAL IN A DISTRIBUTED TOOLBOXnklmish
 
Kotlin boost yourproductivity
Kotlin boost yourproductivityKotlin boost yourproductivity
Kotlin boost yourproductivitynklmish
 
Distributed tracing - get a grasp on your production
Distributed tracing - get a grasp on your productionDistributed tracing - get a grasp on your production
Distributed tracing - get a grasp on your productionnklmish
 
Microservice no fluff, the REAL stuff
Microservice no fluff, the REAL stuffMicroservice no fluff, the REAL stuff
Microservice no fluff, the REAL stuffnklmish
 
Mongo - an intermediate introduction
Mongo - an intermediate introductionMongo - an intermediate introduction
Mongo - an intermediate introductionnklmish
 
Detailed Introduction To Docker
Detailed Introduction To DockerDetailed Introduction To Docker
Detailed Introduction To Dockernklmish
 

Mehr von nklmish (9)

Scaling CQRS in theory, practice, and reality
Scaling CQRS in theory, practice, and realityScaling CQRS in theory, practice, and reality
Scaling CQRS in theory, practice, and reality
 
(SPRING)KAFKA - ONE MORE ARSENAL IN A DISTRIBUTED TOOLBOX
(SPRING)KAFKA - ONE MORE ARSENAL IN A DISTRIBUTED TOOLBOX(SPRING)KAFKA - ONE MORE ARSENAL IN A DISTRIBUTED TOOLBOX
(SPRING)KAFKA - ONE MORE ARSENAL IN A DISTRIBUTED TOOLBOX
 
Kotlin boost yourproductivity
Kotlin boost yourproductivityKotlin boost yourproductivity
Kotlin boost yourproductivity
 
Distributed tracing - get a grasp on your production
Distributed tracing - get a grasp on your productionDistributed tracing - get a grasp on your production
Distributed tracing - get a grasp on your production
 
Spock
SpockSpock
Spock
 
Microservice no fluff, the REAL stuff
Microservice no fluff, the REAL stuffMicroservice no fluff, the REAL stuff
Microservice no fluff, the REAL stuff
 
Neo4J
Neo4JNeo4J
Neo4J
 
Mongo - an intermediate introduction
Mongo - an intermediate introductionMongo - an intermediate introduction
Mongo - an intermediate introduction
 
Detailed Introduction To Docker
Detailed Introduction To DockerDetailed Introduction To Docker
Detailed Introduction To Docker
 

Kürzlich hochgeladen

"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"mphochane1998
 
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Arindam Chakraborty, Ph.D., P.E. (CA, TX)
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXssuser89054b
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...HenryBriggs2
 
2016EF22_0 solar project report rooftop projects
2016EF22_0 solar project report rooftop projects2016EF22_0 solar project report rooftop projects
2016EF22_0 solar project report rooftop projectssmsksolar
 
Bridge Jacking Design Sample Calculation.pptx
Bridge Jacking Design Sample Calculation.pptxBridge Jacking Design Sample Calculation.pptx
Bridge Jacking Design Sample Calculation.pptxnuruddin69
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptDineshKumar4165
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxSCMS School of Architecture
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VDineshKumar4165
 
notes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.pptnotes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.pptMsecMca
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesMayuraD1
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfJiananWang21
 
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxSCMS School of Architecture
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdfKamal Acharya
 
Learn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksLearn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksMagic Marks
 
Rums floating Omkareshwar FSPV IM_16112021.pdf
Rums floating Omkareshwar FSPV IM_16112021.pdfRums floating Omkareshwar FSPV IM_16112021.pdf
Rums floating Omkareshwar FSPV IM_16112021.pdfsmsksolar
 
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best ServiceTamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Servicemeghakumariji156
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptxJIT KUMAR GUPTA
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdfKamal Acharya
 

Kürzlich hochgeladen (20)

"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
 
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
 
2016EF22_0 solar project report rooftop projects
2016EF22_0 solar project report rooftop projects2016EF22_0 solar project report rooftop projects
2016EF22_0 solar project report rooftop projects
 
Bridge Jacking Design Sample Calculation.pptx
Bridge Jacking Design Sample Calculation.pptxBridge Jacking Design Sample Calculation.pptx
Bridge Jacking Design Sample Calculation.pptx
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
notes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.pptnotes on Evolution Of Analytic Scalability.ppt
notes on Evolution Of Analytic Scalability.ppt
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdf
 
Learn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic MarksLearn the concepts of Thermodynamics on Magic Marks
Learn the concepts of Thermodynamics on Magic Marks
 
Rums floating Omkareshwar FSPV IM_16112021.pdf
Rums floating Omkareshwar FSPV IM_16112021.pdfRums floating Omkareshwar FSPV IM_16112021.pdf
Rums floating Omkareshwar FSPV IM_16112021.pdf
 
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best ServiceTamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 

Demystifying Kafka