更新時間:2021年10月06日10時59分 來源:傳智教育 瀏覽次數(shù):
Apache Kafka是一個分布式流平臺。一個分布式的流平臺應(yīng)該包含3點關(guān)鍵的能力:
1. 發(fā)布和訂閱流數(shù)據(jù)流,類似于消息隊列或者是企業(yè)消息傳遞系統(tǒng)
2. 以容錯的持久化方式存儲數(shù)據(jù)流
處理數(shù)據(jù)流
英文原版
Publish and subscribe to streams of records, similar to a message queue or enterprise
messaging system.
Store streams of records in a fault-tolerant durable way.
Process streams of records as they occur.
1. Linkedin還是挺牛逼的
Kafka比ActiveMQ牛逼得多
前面我們了解到,消息隊列中間件有很多,為什么我們要選擇Kafka?
特性 |
ActiveMQ |
RabbitMQ |
Kafka |
RocketMQ |
所屬社區(qū)/公司 |
Apache |
Mozilla Public License |
Apache |
Apache/Ali |
成熟度 |
成熟 |
成熟 |
成熟 |
比較成熟 |
生產(chǎn)者-消費者模式 |
支持 |
支持 |
支持 |
支持 |
發(fā)布-訂閱 |
支持 |
支持 |
支持 |
支持 |
REQUEST-REPLY |
支持 |
支持 |
- |
支持 |
API完備性 |
高 |
高 |
高 |
低(靜態(tài)配置) |
多語言支持 |
支持JAVA優(yōu)先 |
語言無關(guān) |
支持,JAVA優(yōu)先 |
支持 |
單機呑吐量 |
萬級(最差) |
萬級 |
十萬級 |
十萬級(最高) |
消息延遲 |
- |
微秒級 |
毫秒級 |
- |
可用性 |
高(主從) |
高(主從) |
非常高(分布式) |
高 |
消息丟失 |
- |
低 |
理論上不會丟失 |
- |
消息重復(fù) |
- |
可控制 |
理論上會有重復(fù) |
- |
事務(wù) |
支持 |
不支持 |
支持 |
支持 |
文檔的完備性 |
高 |
高 |
高 |
中 |
提供快速入門 |
有 |
有 |
有 |
無 |
首次部署難度 |
- |
低 |
中 |
高 |