在大資料中,使用了大量的資料。關於資料,我們有兩個主要挑戰。第乙個挑戰是如何收集大量資料,第二個挑戰是分析收集的資料。為了克服這些挑戰,您必須使用訊息傳遞系統。
卡夫卡專為分布式高吞吐量系統而設計。卡夫卡傾向於非常好地取代傳統的資訊**者。與其他訊息系統相比,kafka具有更好的吞吐量,內建分割槽,複製和固有容錯功能,因此非常適合大型訊息處理應用程式。
什麼是訊息系統?訊息系統負責將資料從乙個應用程式傳輸到另乙個應用程式,因此應用程式可以專注於資料,但不用擔心如何共享資料。分布式訊息傳遞基於可靠訊息佇列的概念。訊息在客戶端應用程式和訊息傳遞系統之間非同步排隊。有兩種型別的訊息傳遞模式可用 - 一種是點對點的,另一種是發布 - 訂閱(pub-sub)訊息傳遞系統。大多數訊息傳遞模式遵循pub-sub。
點對點訊息系統
在點對點系統中,訊息被儲存在乙個佇列中。乙個或多個消費者可以消費佇列中的訊息,但是特定的訊息只能由最多乙個消費者消費。一旦消費者在佇列中讀取訊息,訊息就從該佇列中消失。這個系統的典型例子是乙個訂單處理系統,其中每個訂單將由乙個訂單處理器處理,但是多訂單處理器也可以同時工作。下圖描述了結構。
發布 - 訂閱訊息系統
在發布 - 訂閱系統中,訊息被儲存在乙個主題中。 與點對點系統不同,消費者可以訂閱乙個或多個主題並使用該主題中的所有訊息。 在發布 - 訂閱系統中,訊息生產者稱為發布者,訊息消費者稱為訂閱者。 乙個真實的例子是dish tv,它發布體育,電影,**等不同的頻道,任何人都可以訂閱他們自己的頻道,並在他們訂閱的頻道可用時獲得。
優點以下是卡夫卡的一些好處 -
卡夫卡速度非常快,可確保零停機時間和零資料丟失。
用例卡夫卡可用於許多用例。其中一些列在下面 -
何時需要卡夫卡kafka是處理所有實時資料饋送的統一平台。 kafka支援低延遲訊息傳送並在出現機器故障時保證容錯。它有能力處理大量不同的消費者。卡夫卡速度非常快,每秒執行200萬次寫入。卡夫卡會將所有資料保留在磁碟上,這意味著所有寫入都會進入作業系統(ram)的頁面快取。這使得從頁面快取向網路套接字傳輸資料非常高效。
Apache Kafka學習教程之基礎知識
深入卡夫卡之前,您必須了解主題 topics brokers 生產者 producers 和消費者 consumers 等主要術語。下圖說明了主要術語,詳細描述了圖表元件。在上圖中,主題被配置為三個分割槽。分割槽1具有兩個偏移因子0和1.分割槽2具有四個偏移因子0,1,2和3.分割槽3具有乙個偏移因...
《Apache Kafka》學習筆記
1.什麼是kafka kafka是乙個高通過率的分布式訊息系統 2.訊息佇列 message queue mq的模型 訊息佇列的簡單架構圖 3個核心概念 message queue 訊息佇列 訊息排隊,訊息就是資料。通過訊息模型可以完成乙個系統和另乙個系統的互動,系統的通訊也就是系統與系統的呼叫。訊...
Apache Kafka系列之Kafka介紹
kafka是乙個分布式的 分割槽的 多複本的日誌提交服務。它通過一種獨一無二的設計提供了乙個訊息系統的功能。所有的這些意味著什麼?1 kafka維護按類區分的訊息,稱為主題 topic 2 生產者 producer 向kafka的主題發布訊息 3 消費者 consumer 向主題註冊,並且接收發布到...