nsq 學習

nsq 簡介:nsq 是實時分佈式消息處理平臺,是基於go 語言開發的特點是
● 分佈式 (Distributed) 去中心化拓撲
● 可伸縮 (Scalable) 橫向擴展
● 操作友好 (Ops Friendly) 簡單的配置&部署
● 可集成 (Integrated) 各種lib
主要模塊
nsq主要有3個守護進程組成
● nsqd 負責接收, 保存( … 暫存?), 傳送消息.
● nsqlookupd 管理拓撲信息, 維護所有nsqd的狀態, 提供 最終一致發現服務
● nsqadmin 一個Web UI 用於實時監控集羣, 執行各種管理任務
nsqd 負責接收,保存,傳送消息,啓動命令:./nsqd --lookupd-tcp-address=127.0.0.1:4160 & 第二步
nsqlookupd 管理拓撲信息,維護nsqd 的狀態 命令:./nsqlookupd & 第一步
nsqadmin 基於web 實時監控集羣 運行命令 ./nsqadmin --lookupd-http-address=0.0.0.0:4161 --http-address=10.99.203.47:8761&
nsqd 主要是 兩種模式組成:nsqd (topic + channel)
如圖所示:
在這裏插入圖片描述
使用流程:
建立一個小型的nsq 集羣,完成消息發佈,使用
linux 安裝命令:
wget nsq-1.2.0.linux-amd64.go1.12.9.tar.gz
cd 到bin 目錄
執行目錄
進入bin目錄
cd nsq-1.0.0-compat.linux-amd64.go1.8/bin
啓動nsqlookup
./nsqlookupd &
啓動nsqd
./nsqd --lookupd-tcp-address=127.0.0.1:4160 &
運行 nsqadmin 管理
./nsqadmin --lookupd-http-address=0.0.0.0:4161 --http-address=10.99.203.47:8761&
客戶端寫入消息

發送消息

curl -d ‘hello world 1’ ‘http://127.0.0.1:4151/pub?topic=test’

發送更多的消息

☐ curl -d ‘hello world 2’ ‘http://127.0.0.1:4151/pub?topic=test’
☐ curl -d ‘hello world 3’ ‘http://127.0.0.1:4151/pub?topic=test’
隊列消息寫入文件
./nsq_to_file --topic=test --output-dir=/tmp/log --lookupd-http-address=127.0.0.1:4161
訪問nsqadmin
http://10.99.203.47:8761/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章