From e4c89da96299ffdaa8397a51bf5df3c5bd83d667 Mon Sep 17 00:00:00 2001 From: Junwei Zhao Date: Thu, 22 Mar 2018 16:46:41 +1100 Subject: [PATCH] Add something about kafka --- assets/images/kafka-apis.png | Bin 0 -> 86640 bytes categories/software-design.md | 17 ++++++++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 assets/images/kafka-apis.png diff --git a/assets/images/kafka-apis.png b/assets/images/kafka-apis.png new file mode 100644 index 0000000000000000000000000000000000000000..db6053ccc2231d566f9c7345ac11b53826089789 GIT binary patch literal 86640 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 boIj$qpHpLTYE>;fLwRXy7^s&#c=GCBtGQ{O literal 0 HcmV?d00001 diff --git a/categories/software-design.md b/categories/software-design.md index 3acdbe0..1fc2eec 100644 --- a/categories/software-design.md +++ b/categories/software-design.md @@ -70,7 +70,22 @@ - a function value that references variables from outside its body - In Javascript, not all anonymous function are lamdba, and vise verse -# Event Sourcing and Command Query Responsibility Segregation (CQRS) +# Event Sourcing + +## Kafka + +Apache Kafka is a distributed streaming platform + +![Kafka APIs](https://raw.githubusercontent.com/wahyd4/knowledge-mind-mapping/master/assets/images/kafka-apis.png) + +There are 4 core APIs in kafka: + +* Producer API +* Consumer API +* Streams API +* Connector API + +# Command Query Responsibility Segregation (CQRS) Every changes you made to the system is a event, events are been persisted and can be replayed to generate the materialized view.