After familiarizing myself with blockchain over the past couple years, I noticed a few caveats and setbacks that make blockchain a ‘not-so-ideal’ solution to record tracking in a P2P network. It’s not as scalable and it’s quite slow in a busy network. Enter Apache Kafka, with its high performance and immutable logging. In this talk, I want to explore the relationship between Blockchain and Kafka and demonstrate how the two technologies can benefit from each other. If you’re interested in the future of blockchain and love Kafka, this is definitely up your alley.
2. Agenda
What is a DApp?
01
Popular Use Cases for DApps
02
Advantages/Disadvantages of Blockchain
03
Kafka and Blockchain
04
Demo
05
Final Remarks
06
3. What is a
Decentralized
Application?
A program that runs on ”blockchain" or ”P2P” networks.
They combine a smart contract and a frontend user interface
to give users more control over their online data. Using a
currency like Ether, DApps are transforming the way the
Internet works
6. Kafka can solve some of our
problems
REALTIME
TRANSACTIONS
Instead of waiting for 5
minutes, instantaneous
response
HIGH
THROUGHPUT
Ability to ingest
monstrous amount of
data per second
MESSAGE
RETENTION
An immutable commit
log to replay all
transactions
7. Kafka and
Blockchain
An experiment
Kafka shares a lot of parallels with distributed
ledgers and what they aim to achieve. So why not
try to combine the two?
Kafka
UI Blockchain
Payment
Gateway
8. A Simple
Approach
Two Topics
A topic for unverified transactions and a topic for
verified transactions. The goal is to keep them in sync.
Producer
t1 t2
Consumer
10. Final Remarks
Kafka and Blockchain
Has a chance of working in a trustful environment.
Still a long way to go until decentralized apps
become the norm but until then we need to keep
experimenting.