じゃあ、おうちで学べる

本能を呼び覚ますこのコードに、君は抗えるか

あゝ,MQ

布地の販売員をしている青年グレゴール・ザムザは、ある朝自室のベッドで目覚めると、自分が巨大な毒虫になってしまっていることに気が付く。突然のことに戸惑いながらも、彼はもう少し眠ってみようと試みるが、しかし体を眠るためのちょうどよい姿勢にすることができない。仰向けの姿勢のまま、グレゴールは今の仕事に対する様々な不満に思いを募らせる。

はじめに

タイトルでは少し,イキった末に.この記事はリンク集となり果てた

久しぶりのブログで書き方を忘れた.悲しい.もともと,書き方なんて意識してなかったし今回も,つれずれなるままに書きたい.

最近,マイクロサービスの流行に伴ってREST APIを実走する機会も増えてきた.感情を殺しながら実装できるのでDjango REST Frameworkはおすすめです.

OSSコンポーネントを触っているとMessage Queueing( 今後,MQ ) という単語を聞く機会も増えた.一時は下火になっていた技術が再考されて復活していくことは個人的に好き.

最近,AmazonのSQSに機能が追加されたりAWS Step Functionsのようなサービスも出てきてMQでサービスを開発するというのは普通の選択肢として選べるっぽい.

今回は文章量が多くなったのでApache Kafkaを実際に構築したりはせずに,適当に情報をまとめてポエムしただけです.これらの資料読めば独力でApache Kafkaの環境構築が可能です.情緒が女子高生より不安定ですが次回はApache KafkaやZookeeperの構築,Golangによるプロデューサとコンシューマの実装について記述します.

用語集

message

流すデータ.僕が生きるために垂れ流すデータ.サーバの1つ1つのログとかがそれにあたる.

topic

messageのカテゴリのこと.topicは任意に名前を決めれる. 僕のLifelogならばlifelogs,WebサーバーのログならばWeblogsなど

broker

Kafkaにおいてはmessageの保管場所.データはここに格納されている.

producer

brokerにmessageを送信するcomponent.主にデータを送信するものと覚えておけばよい

consumer

brokerからmessageを読むcomponent.データを取り出して読むことをconsumeというらしい.

consumer group

言葉通り,consumerをグルーピングしたもの.

offset

consumerと密接に関わっており,consumerがどこまでconsumeしたかの情報を保持している. その情報を管理しているのはZookeeperとかいう動物園.

Links

メッセージングサービス・ストリーム処理概要について

https://www.slideshare.net/SotaroKimura/kafka-62558083
https://www.slideshare.net/laclefyoshi/ss-67658888

kafka 日本語の情報

Apache Kafka 日本語訳

Apache Kafkaに入門した | SOTA

概要

http://www.konekto.jp/seminar/161004/session3.pdf
http://inokara.hateblo.jp/entry/2016/05/01/113254
http://deeeet.com/writing/2015/09/01/apache-kafka/

詳細

https://www.slideshare.net/techblogyahoo/java-client-apache-kafka-jjugccc-ccce2
http://xuwei-k.github.io/slides/kafka-matsuri/
https://www.slideshare.net/matsu_chara/kafka-part2

kafka 英語情報

公式

https://kafka.apache.org/documentation/

概観

https://www.confluent.io/blog/apache-kafka-samza-and-the-unix-philosophy-of-distributed-data/

書籍

http://shop.oreilly.com/product/0636920044123.do

confluentのblog

https://www.confluent.io/blog/
https://www.slideshare.net/ConfluentInc/deep-dive-into-apache-kafka-66821186
https://www.slideshare.net/HadoopSummit/apache-kafka-best-practices

kafka 導入事例など

yahoo

https://www.slideshare.net/techblogyahoo/kafkastreamplatform

サイボウズ

https://www.slideshare.net/ShinyaUeoka/ss-78228751

netflix (Kafka + AWS)

https://medium.com/netflix-techblog/kafka-inside-keystone-pipeline-dd5aeabaf6bb
https://www.slideshare.net/mdaxini/the-netflix-way-to-deal-with-big-data-problems-62076410

LinkedIn

https://engineering.linkedin.com/blog/2016/04/kafka-ecosystem-at-linkedin

Kafka + Azure

https://blogs.msdn.microsoft.com/dataplatjp/2017/01/23/apache-kafka-for-hdinsight-public-preview-1/

こまかい情報

Apache Kafka Client

https://github.com/confluentinc/confluent-kafka-go
https://github.com/confluentinc/confluent-kafka-python Mac OS X環境で、Apache Kafkaの基本動作を試してみる - Qiita

kafkaクラスタ内のZookeeperの役割

https://www.quora.com/What-is-the-actual-role-of-Zookeeper-in-Kafka-What-benefits-will-I-miss-out-on-if-I-don%E2%80%99t-use-Zookeeper-and-Kafka-together

Scaling Blockchains with Apache Kafka

https://blog.gridplus.io/scaling-blockchains-with-apache-kafka-814c85781c6

NATSについて

https://www.slideshare.net/laclefyoshi/ss-67658888
http://nats.io/documentation/

マイクロサービス

Microservices
マイクロサービスの論文を完全日本語翻訳してみた。(1万5667字) – KOBIT

ApacheKafkaのクイックスタート(日本語)

Apache Kafka 日本語訳