Submit Search
Upload
Tour of Distributed Systems 3 - Apache Kafka
•
2 likes
•
1,494 views
Chris Birchall
Follow
分散システムのツアー #3 - Apache Kafka
Read less
Read more
Technology
Report
Share
Report
Share
1 of 13
Download now
Download to read offline
Recommended
社内勉強会(Docker)
社内勉強会(Docker)
Shinya Sasaki
CDP in NAGOYA
CDP in NAGOYA
Hiroyasu Suzuki
k8sクラスタ構築
k8sクラスタ構築
asuka y
Kafkaによるリアルタイム処理
Kafkaによるリアルタイム処理
Naoki Yanai
Fast Data を扱うためのデザインパターン
Fast Data を扱うためのデザインパターン
MapR Technologies Japan
Cassandra Summit 2016 注目セッション報告
Cassandra Summit 2016 注目セッション報告
Yahoo!デベロッパーネットワーク
Azure container as a service v0.1.19.1213
Azure container as a service v0.1.19.1213
Ayumu Inaba
AWS re:Invent2017で見た AWSの強さとは
AWS re:Invent2017で見た AWSの強さとは
NTT Communications Technology Development
Recommended
社内勉強会(Docker)
社内勉強会(Docker)
Shinya Sasaki
CDP in NAGOYA
CDP in NAGOYA
Hiroyasu Suzuki
k8sクラスタ構築
k8sクラスタ構築
asuka y
Kafkaによるリアルタイム処理
Kafkaによるリアルタイム処理
Naoki Yanai
Fast Data を扱うためのデザインパターン
Fast Data を扱うためのデザインパターン
MapR Technologies Japan
Cassandra Summit 2016 注目セッション報告
Cassandra Summit 2016 注目セッション報告
Yahoo!デベロッパーネットワーク
Azure container as a service v0.1.19.1213
Azure container as a service v0.1.19.1213
Ayumu Inaba
AWS re:Invent2017で見た AWSの強さとは
AWS re:Invent2017で見た AWSの強さとは
NTT Communications Technology Development
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
Kenji Aoyama
Docker ComposeでMastodonが必要なものを梱包する話
Docker ComposeでMastodonが必要なものを梱包する話
Masahito Zembutsu
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
Kuniyasu Suzaki
Kubernetesを触ってみた
Kubernetesを触ってみた
Kazuto Kusama
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
Izumi Tsutsui
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
Kenjiro Kubota
EditShare システムの紹介
EditShare システムの紹介
Dell TechCenter Japan
Scala.js & friends: SCALA ALL THE THINGS
Scala.js & friends: SCALA ALL THE THINGS
Chris Birchall
Rust 超入門
Rust 超入門
Chris Birchall
Tour of distributed systems 2 - Cassandra
Tour of distributed systems 2 - Cassandra
Chris Birchall
Guess the Country - Playing with Twitter Streaming API
Guess the Country - Playing with Twitter Streaming API
Chris Birchall
Tour of distributed systems 1 - ZooKeeper
Tour of distributed systems 1 - ZooKeeper
Chris Birchall
ScalaCache: simple caching in Scala
ScalaCache: simple caching in Scala
Chris Birchall
Hydra
Hydra
Chris Birchall
Load testing with gatling
Load testing with gatling
Chris Birchall
Debugging and Testing ES Systems
Debugging and Testing ES Systems
Chris Birchall
Phone Home: A client-side error collection system
Phone Home: A client-side error collection system
Chris Birchall
Branching Strategies: Feature Branches vs Branch by Abstraction
Branching Strategies: Feature Branches vs Branch by Abstraction
Chris Birchall
More Related Content
Similar to Tour of Distributed Systems 3 - Apache Kafka
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
Kenji Aoyama
Docker ComposeでMastodonが必要なものを梱包する話
Docker ComposeでMastodonが必要なものを梱包する話
Masahito Zembutsu
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
Kuniyasu Suzaki
Kubernetesを触ってみた
Kubernetesを触ってみた
Kazuto Kusama
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
Izumi Tsutsui
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
Kenjiro Kubota
EditShare システムの紹介
EditShare システムの紹介
Dell TechCenter Japan
Similar to Tour of Distributed Systems 3 - Apache Kafka
(7)
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
Docker ComposeでMastodonが必要なものを梱包する話
Docker ComposeでMastodonが必要なものを梱包する話
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
Kubernetesを触ってみた
Kubernetesを触ってみた
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
EditShare システムの紹介
EditShare システムの紹介
More from Chris Birchall
Scala.js & friends: SCALA ALL THE THINGS
Scala.js & friends: SCALA ALL THE THINGS
Chris Birchall
Rust 超入門
Rust 超入門
Chris Birchall
Tour of distributed systems 2 - Cassandra
Tour of distributed systems 2 - Cassandra
Chris Birchall
Guess the Country - Playing with Twitter Streaming API
Guess the Country - Playing with Twitter Streaming API
Chris Birchall
Tour of distributed systems 1 - ZooKeeper
Tour of distributed systems 1 - ZooKeeper
Chris Birchall
ScalaCache: simple caching in Scala
ScalaCache: simple caching in Scala
Chris Birchall
Hydra
Hydra
Chris Birchall
Load testing with gatling
Load testing with gatling
Chris Birchall
Debugging and Testing ES Systems
Debugging and Testing ES Systems
Chris Birchall
Phone Home: A client-side error collection system
Phone Home: A client-side error collection system
Chris Birchall
Branching Strategies: Feature Branches vs Branch by Abstraction
Branching Strategies: Feature Branches vs Branch by Abstraction
Chris Birchall
More from Chris Birchall
(11)
Scala.js & friends: SCALA ALL THE THINGS
Scala.js & friends: SCALA ALL THE THINGS
Rust 超入門
Rust 超入門
Tour of distributed systems 2 - Cassandra
Tour of distributed systems 2 - Cassandra
Guess the Country - Playing with Twitter Streaming API
Guess the Country - Playing with Twitter Streaming API
Tour of distributed systems 1 - ZooKeeper
Tour of distributed systems 1 - ZooKeeper
ScalaCache: simple caching in Scala
ScalaCache: simple caching in Scala
Hydra
Hydra
Load testing with gatling
Load testing with gatling
Debugging and Testing ES Systems
Debugging and Testing ES Systems
Phone Home: A client-side error collection system
Phone Home: A client-side error collection system
Branching Strategies: Feature Branches vs Branch by Abstraction
Branching Strategies: Feature Branches vs Branch by Abstraction
Tour of Distributed Systems 3 - Apache Kafka
1.
Apache Kafka 分散システムのツアー
#3 Chris 2014/10/15 #m3dev https://github.com/m3dev/distrib-systems-tour
2.
Kafka ● PubSubメッセージ・キュー
● LinkedIn発 ● 売り ○ パフォーマンス ○ スケーラビリティ ○ 永続性 ○ 柔軟な配布モデル:コンシューマ・グループ ● Scala実装、多言語のクライアント
3.
アーキテクチャ Producer Producer
Producer Producer Kafka cluster Broker Broker Broker Consumer Group 1 Consumer Group 2 Consumer Consumer Consumer Consumer ZooKeeper HDD HDD HDD
4.
コンシューマ・グループ ● 全てのメッセージを全てのconsumer
group(の consumerのいずれか)に配布する ● 例) ○ メッセージ 1, 2, 3, 4 ○ コンシューマグループ A, B ○ Aにコンシューマ2台:A1, A2 ○ Bにコンシューマ2台:B1, B2 Group A Group B A1 A2 B1 B2 ① ③ ② ④ ③ ④ ① ②
5.
コンシューマ・グループ ● スペシャルケース
○ 全てのコンシューマが同じグループに所属 ■ 普通のキュー ○ コンシューマはそれぞれ別グループ ■ 普通のPub-Sub
6.
(とある consumer group
の中の話です) パーティション ● トピックを複数の partition に分ける ● Producer が message ⇔ partition の振り分け を決める ● Kafka broker が partition ⇔ consumer の振り 分けを決める ● 制限:Consumer数 ≦ Partition数 Producer Producer Partition 1 Partition 2 Consumer Partition 3 Consumer
7.
永続性 ● Brokerはメッセージをファイルに書き込む
● Consumerがメッセージを消費しても、一定期間 brokerに残る ● Consumerが自身の経過を管理するので、巻き 戻して再読み込みができる
8.
パフォーマンス $ brew
install kafka $ cd /usr/local/opt/kafka $ bin/start-zookeeper-server.sh libexec/config/zookeeper.properties & $ bin/kafka-server-start.sh libexec/config/server.properties & $ bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test $ bin/kafka-producer-perf-test.sh --broker-list localhost:9092 --topics test --messages 1000000 結果:49,568 messages/sec (Late 2011 MBP, 100 byte msgs)
9.
スケーラビリティ LinkedIn社で1千億メッセージ/日! https://twitter.com/jaykreps/status/479749975853641729
10.
使い所:リアルタイム通知
11.
使い所:レポーティング
12.
使い所:多目的イベント活用
13.
ハンズオン! OSX: brew
install kafka or, AWS上に稼働中のKafka を使う 192.168.51.119:9092 https://github.com/m3dev/distrib-systems-tour
Download now