-
消費(fèi)不了,兩個(gè)可能:
一是 rabbitmq配置錯(cuò)誤,
二是 發(fā)送端和消費(fèi)端的實(shí)體類的路徑不一致;
查看全部 -
保障100%消息投遞成功方案: sender 發(fā)送消息后,等待 broker 返回確認(rèn),超時(shí)未收到返回時(shí)通知 (用定時(shí)任務(wù)掃描狀態(tài)未成功,且超過時(shí)間跨度的消息),則通知 sender 再次發(fā)送。
(這步解決了消息發(fā)送時(shí)丟失的問題,但是產(chǎn)生了重復(fù)發(fā)送的問題:消息確實(shí)發(fā)送成功了,但是丟失了返回確認(rèn)通知,要解決這個(gè)問題需要在消費(fèi)端服務(wù)進(jìn)行冪等)
查看全部 -
演示配置: /etc/hostname (配置主機(jī)) /etc/hosts (搭建集群配置)
安裝軟件:erlang , socat (秘鑰工具) , rabbitmq-server? (按這個(gè)順序依次安裝)
修改控制臺(tái)的用戶名密碼: /ebin/rabbit.app 文件編輯 loopback_users
改為 [guest] (去掉雙尖括號(hào)和雙引號(hào),當(dāng)做常量)
--------------------------------------------------------
rabbitmqctl 集群相關(guān)的各種操作
rabbitmq-server 啟動(dòng)服務(wù)
驗(yàn)證是否啟動(dòng)成功:# lsof -i:5672(端口)?
--------------------------------------------------------
rabbitmq-plugins 安裝插件(比如控制臺(tái))
#rabbitmq-plugins list? ?( 打印列表,找到?rabbitmq_management )
#rabbitmq-plugins? enable rabbitmq_management? (把它 enable )
在瀏覽器打開管控臺(tái)(默認(rèn) 15672)
查看全部 -
基于 AMQP 協(xié)議 ,用 erlang 語言編寫,延遲度低
特點(diǎn):集群模式豐富(主要采用鏡像隊(duì)列,保證消息不丟失),表達(dá)式配置,ha模式,
--------------------------------------------------------
AMQP 模型: publisher -> [ exchange -> queue] ( 這里就是 broker 或 server )? -> consumer
exchange 與 queue 之間建立了路由關(guān)系
查看全部 -
下載rabbitMQ的步驟
如果沒刪干凈的話,會(huì)報(bào)錯(cuò),在9:58的位置會(huì)有解決方法
查看全部 -
RabbitMQ是一個(gè)開源的消息代理和隊(duì)列服務(wù)器,用來通過普通協(xié)議在完全不同的應(yīng)用之間共享數(shù)據(jù),RabbitMQ是使用Erlang語言來編寫的,并且RabbitMQ是基于AMQP協(xié)議的。
開源、性能優(yōu)秀,穩(wěn)定性保障
與SpringAMQP完美的整合、API豐富
集群模式豐富,表達(dá)式配置,HA模式,鏡像隊(duì)列模型
保證數(shù)據(jù)不丟失的前提做到可靠性、可用性
AMQP全稱:Advanced Message Queuing Protocal(高級(jí)消息隊(duì)列)
查看全部 -
滴滴頭條,美團(tuán)都在用這個(gè)
可靠性投遞
通過confirm模式
消息入庫
ack
查看全部 -
2
查看全部 -
8
查看全部 -
ack手工簽收
查看全部 -
手工簽收必須依賴通道
分為消息體和消息頭
手工簽收有一個(gè)basicAck的響應(yīng)
查看全部 -
1
查看全部 -
1
?
查看全部 -
路由規(guī)則
broker就是服務(wù)
查看全部 -
publisher-confirms 異步等待消息結(jié)果
查看全部
舉報(bào)