Kafka(一)初識消息隊列

很幸運,最近工作的方向跟我個人興趣非常吻合,開始進行架構中消息隊列的學習。

傳統的消息隊列分為2種,一種是queuing式,一種是publish-subscribe式。

而Kafka,是當前非常流行、非常穩定的消息隊列。

什麼是Kafka?

Apache Kafka? is a distributed streaming platform.

到了這一步的學習,英文文獻是必不可少了。

Apache Kafka

當然,也有不錯的中文文獻,可以在這裡了解一下基本概念,再詳細閱讀英文文獻。

kafka入門介紹 - OrcHome

Kafka的分散式架構設計與High Availability機制

而我最近的工作,是負責進行Kafka的高可用(HA)機制設計。

注意,0.8.2版本跟0.10版本最大的不同就在於0.10版本不再依賴zookeeper(Java中間件),使用0.8.2版本的時候,消費者,要區分不同的Kafka集群,是通過指定不同的zookeeper-list來完成的。

原理的部分,文檔上面寫的太好了。但是它的quick-start我運行失敗(centOS 6)。因為zookeeper那裡就跑不起來,卡在了綁定埠。最後做的實驗還是在公司的環境下做的。如果學生們想學習,可能會遇到很多很多的坑。

更多的資料可能會放在第二篇,結合了Flink、zookeeper再來。

希望對你有幫助。

推薦閱讀:

storm為什麼總是和消息隊列一起用呢?
Kafka,Mq,Redis作為消息隊列使用時的差異?
基於AMQP實現的golang消息隊列MaxQ

TAG:消息队列 | Kafka |