在這個apache
kafka
教程中,我們將學習kafka broker。
kafka broker管理主題中的訊息儲存。
如果apache kafka有多個**,那就是我們所說的
kafka集群
。此外,在本kafka broker教程中,我們將學習如何啟動kafka broker和kafka命令列選項。
那麼,讓我們開始apache kafka broker。
kafka broker |
命令列選項和過程
kafka**也稱為kafka伺服器和kafka節點。
這些所有名稱都是它的同義詞。
簡單來說,經紀人是兩者之間的中介。
但是,kafka經紀人更準確地描述為訊息**,它負責調解不同計算機系統之間的對話,保證將訊息傳遞給正確的各方。
閱讀apache kafka security |
kafka的需求和元件
因此,kafka集群通常由多個**組成。
kafka cluster使用zookeeper來維護集群狀態。
單個broker每秒可以處理數千次讀寫操作。
然而,如果沒有效能影響,每個**都可以處理tb訊息。
另外,要非常肯定zookeeper會執行經紀人領袖選舉。
經紀人在卡夫卡的工作
基本上,kafka中的經紀人被建模為主持主題的kafkaserver。
在這裡,給定的主題總是在**之間進行分割槽,在集群中,單個**實際上託管乙個或多個主題的主題分割槽,即使主題僅分割槽到單個分割槽也是如此。
了解apache kafka consumer |
kafka consumer的示例
此外,生產者
在收到經紀人將其儲存在由唯一偏移量鍵入的磁碟上後,向**傳送訊息。
此外,通過主題,分割槽和偏移,**允許消費者獲取訊息。
但是,**可以通過使用zookeeper直接或間接地相互共享資訊來建立群集。
此外,我們可以說kafka集群只有乙個**作為控制器。
通過使用
kafka-server-start.sh
指令碼,我們可以啟動乙個kafka經紀人。
我們可以啟動乙個kafka伺服器,只有當zookeeper啟動並執行時(它將連線到zookeeper)。
kafka-server-start.sh指令碼
因此,kafka-server-start.sh啟動經紀人。
用法:./
bin
/ kafka-server-start.sh
[ -daemon
] server.properties
[ --override property = value ] *
注意 -
在執行kafka-server-start.sh之前,請確保zookeeper已啟動並執行
。而且,使用
zookeeper-server-startshell指令碼。
看看apache kafka + spark streaming integration
kafka-server-start.sh使用config / log4j.properties來記錄我們可以使用kafka_log4j_opts環境變數
覆蓋的配置
。「 - dlog4j.configuration = file:config / log4j.properties」
kafka-server-start.sh接受kafka_heap_opts和extra_args環境變數。
-name
在守護程序模式下預設為kafkaserver。
-loggc
在守護程序模式下啟用。
-daemon
啟用守護程式模式。
-override property = value
應覆蓋server.properties檔案中為property設定的值的值。
讓我們修改apache kafka streams |
流處理拓撲
100...
資訊[
kafkaserver id =
100
]已啟動
(kafka.server.kafkaserver
)因此,我們已經學習了完整的kafka broker以及啟動它的命令。
另請參閱 -
kafka-序列化和反序列化以
4 使用Flask Script支援命令列選項
flask script 是乙個 flask 擴充套件,為 flask 程式新增了乙個命令列解析器。flask script 自帶 了一組常用選項,而且還支援自定義命令 使用如下 1 安裝flask script 在windows命令列中,啟用虛擬環境 2 把命令列解析功能新增到hello.py程式...
命令列 Git Bash命令列小結
展示當前完整路徑pwd 建立資料夾mkdir 建立檔案touch 刪除資料夾rm rf 刪除檔案rm 重新命名mv 展示當前路徑下檔案 除了隱藏檔案 ls 展示當前路徑下所有檔案ls a 展示當前路徑下所有檔案以及詳細資訊ls al 轉至某目錄cd 根目錄 上級目錄.當前目錄.檢視檔案cat 檔名稱...
git 命令列 和 cmd命令列
設定全域性使用者名稱 git config global user.name 區域性把global換成local 檢視全域性 git config global list 檢視git的狀態 git status 初始化 git into 名字 新增乙個檔案 git add readme.txt 刪除...