kafka messaging javacro2019 ibm pdfv · •kafka basics •kafka use cases •java connector...

22
Integrating Kafka with Enterprise Java for establishing a high performant distributed messaging infrastructure Anamarija Talijanac, Irena Kezić IBM Services 13 th May, 2019

Upload: others

Post on 25-Jul-2020

31 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Integrating Kafka with Enterprise Java for establishing a high performant distributed messaging infrastructure

Anamarija Talijanac, Irena KezićIBM Services13th May, 2019

Integrating Kafka with Enterprise Java for establishing a high performant distributed messaging infrastructure

Anamarija Talijanac, Irena KezićIBM Services13th May, 2019

Page 2: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

• Kafka basics• Kafka Use Cases• Java Connector Architecture• Distributed messaging challenges• Reliable Kafka Processing• IBM Event Streams

Agenda

© 2019 IBM Corporation

Page 3: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Architectural overview

© 2019 IBM Corporation

Page 4: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Architectural overview

© 2019 IBM Corporation

Page 5: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Kafka basics

HIGH THROUGHPUT

DURABILITY RELIABILITY SCALABILITY

© 2019 IBM Corporation

Page 6: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Kafka basics

6

• Cluster / Broker• Topic / Partition• Producer / Consumer

© 2019 IBM Corporation

Page 7: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Kafka Use Cases

7

• Activity tracking• Commit Log• Metrics and Logging• Unit of Order• Stream processing

© 2019 IBM Corporation

Page 8: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Java Connector Architecture

© 2019 IBM Corporation

Page 9: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

• The Java EE standard for integrating application servers with EIS.• Unified common client interface for heterogeneous resource providers

Java Connector Architecture

© 2019 IBM Corporation

Page 10: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

• Lifecycle management Contract• Work management Contract• Connection Management Contract• Transaction Management Contract• Security Contract• Transaction Inflow Contract• Message Inflow Contract• Generic Context Contract

Java Connector Architecture

© 2019 IBM Corporation

Page 11: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

EXACTLY ONCE DELIVERY

GUARANTEED ORDER OF MESSAGES

RELIABLE MESSAGING

Distributed messagingchallenges

© 2019 IBM Corporation

Page 12: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

BEGIN TRANSACTION

CONSUME MESSAGE FROM KAFKA TOPIC

INSERT ROW INTO TARGET DATABASE

COMMIT TRANSACTION

XA with Kafka

© 2019 IBM Corporation

Page 13: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Reliable Kafka Processing

© 2019 IBM Corporation

Page 14: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Reliable Kafka Processing

© 2019 IBM Corporation

Page 15: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Reliable Kafka Processing

© 2019 IBM Corporation

Page 16: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Reliable Kafka Processing

© 2019 IBM Corporation

Page 17: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Reliable Kafka Processing

© 2019 IBM Corporation

Page 18: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Reliable Kafka Processing

© 2019 IBM Corporation

Page 19: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Reliable Kafka Processing

© 2019 IBM Corporation

Page 20: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

IBM Event Streams

• IBM has years of operational expertise running Apache Kafka for Enterprises

• Event Streams makes Kafka easy to run, manage & consume, reducing skill requirements and raising speed of deployment for faster time to value

• Support you can Trust – IBM has decades of experience supporting the World’s toughest environments

© 2019 IBM Corporation

Page 21: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

Q&A

© 2019 IBM Corporation

[email protected]@hr.ibm.com

Page 22: Kafka Messaging JavaCro2019 IBM pdfv · •Kafka basics •Kafka Use Cases •Java Connector Architecture •Distributed messaging challenges •Reliable Kafka Processing •IBM Event

IBM Event StreamsVisualisation of your topic

data

Tools to boost productivity