From 9f8daa644549c9585618323965a0ebe82b485263 Mon Sep 17 00:00:00 2001 From: Vijay Date: Wed, 15 Nov 2023 13:23:47 +0530 Subject: [PATCH] feat: added a diagram for kafka topics and partitioning strategies --- docs/technical/central-ledger/README.md | 8 ++++++++ .../Transfers-Kafka-Topics-And-Partitions.drawio.svg | 4 ++++ 2 files changed, 12 insertions(+) create mode 100644 docs/technical/central-ledger/assets/diagrams/architecture/Transfers-Kafka-Topics-And-Partitions.drawio.svg diff --git a/docs/technical/central-ledger/README.md b/docs/technical/central-ledger/README.md index 69df63f59..4c8d473c8 100644 --- a/docs/technical/central-ledger/README.md +++ b/docs/technical/central-ledger/README.md @@ -50,3 +50,11 @@ The **Central Ledger** database schema definition [Central-Ledger Database Schem ## 4. API Specification Refer to **Central Ledger API** in the [API Specifications](../../api/README.md#central-ledger-api) section. + +## 5. Kafka Topics and Partitioning + +Diagram to illustrate kafka topics, partitioning strategies for various mojaloop core services. + +### 5.1 Overview + +![Transfers-Kafka-Topics-And-Partitions.drawio.svg](./assets/diagrams/architecture/Transfers-Kafka-Topics-And-Partitions.drawio.svg) diff --git a/docs/technical/central-ledger/assets/diagrams/architecture/Transfers-Kafka-Topics-And-Partitions.drawio.svg b/docs/technical/central-ledger/assets/diagrams/architecture/Transfers-Kafka-Topics-And-Partitions.drawio.svg new file mode 100644 index 000000000..d735cd3a6 --- /dev/null +++ b/docs/technical/central-ledger/assets/diagrams/architecture/Transfers-Kafka-Topics-And-Partitions.drawio.svg @@ -0,0 +1,4 @@ + + + +
Partition Assignment Strategy: Default
Partition Assignment Strategy: Default
Partition Assignment Strategy: Default
Partition Assignment Strategy: Default

topic-transfer-prepare
topic-transfer-prepa...
topic-transfer-position
topic-transfer-posit...
topic-transfer-fulfil
topic-transfer-fulfil
topic-notification-event
topic-notification-e...
PrepareHandler
PrepareHandler
ml-api-adapter
ml-api-adapter
Key is null
Uses round-robin to balance messages among partitions
Key is null...
Key is AccountID
Uses murmur2 hashing to send messages to partitions
Key is AccountID...
PositionHandler
PositionHandler
Partition Assignment Strategy: cooperative-sticky
Partition Assignment Strategy: cooperative-sticky
Key is null
Uses round-robin to balance messages among partitions
Key is null...
Key is AccountID
Uses murmur2 hashing to send messages to partitions
Key is AccountID...
FulfilHandler
FulfilHandler
Success/
Reject
Success/...
Transfer Timeout
Handler
Transfer Timeout...
ml-notification-handler
ml-notificatio...
Key is null
Uses round-robin to balance messages among partitions
Key is null...
Partition Assignment Strategy: Default
Partition Assignment Strategy: Default
Key is null
Uses round-robin to balance messages among partitions
Key is null...
Key is null
Uses round-robin to balance messages among partitions
Key is null...
Text is not SVG - cannot display
\ No newline at end of file