所謂Kafka 其實(shí)就是由 Linkedin 公司開(kāi)發(fā)的,它是一個(gè)分布式的,支持多分區(qū)、多副本,基于Zookeeper 的分布式消息流平臺(tái),它同時(shí)也是一款開(kāi)源的基于發(fā)布訂閱模式的消息引擎系統(tǒng)。Kafka的主要功能包括生產(chǎn)者發(fā)送消息給kafka服務(wù)器、消費(fèi)者從kafka服務(wù)器讀取消息、Kafka服務(wù)器依托zookeeper集群進(jìn)行服務(wù)的協(xié)調(diào)管理。
1、生產(chǎn)者發(fā)送消息給kafka服務(wù)器
發(fā)送消息主要有3種方式:發(fā)送并忘記(fire-and-forget)、同步發(fā)送、異步發(fā)送。
2、消費(fèi)者從kafka服務(wù)器讀取消息
需要從Kafka讀取數(shù)據(jù)的應(yīng)用程序使用KafkaConsumer訂閱Kafka主題,并從這些主題接收消息。從Kafka讀取數(shù)據(jù)與從其他消息系統(tǒng)讀取數(shù)據(jù)有一點(diǎn)不同,其中包含了一些獨(dú)特的概念和思想。如果不先理解這些概念,就很難理解如何使用消費(fèi)者API。將首先解釋一些重要的概念,然后通過(guò)一些示例展示使用消費(fèi)者api實(shí)現(xiàn)需求不同的應(yīng)用程序的不同方式。
3、Kafka服務(wù)器依托zookeeper集群進(jìn)行服務(wù)的協(xié)調(diào)管理
kafka是通過(guò)zookeeper來(lái)管理集群。kafka軟件包內(nèi)雖然包括了一個(gè)簡(jiǎn)版的zookeeper,但是感覺(jué)功能有限。在生產(chǎn)環(huán)境下,建議還是直接下載官方zookeeper軟件。
以上就是什么是kafka?的內(nèi)容。