參考:https://blog.51cto.com/zero01/2173288
主要是記錄幾個坑:
第一個坑:開始訂單服務中配置文件是:
#配置rabbitmq 2019.5.17 added by longdb
rabbitmq:
host: 193.112.82.83
port: 15672
username: guest
password: guest
listener:
direct:
retry:
enabled: true
simple:
retry:
enabled: true
后來查了資料才知道不能用默認的賬號在項目中連接。
然后用默認賬號進入管理后台新增賬號,嘗試了幾次還是搞不定,項目中一直報錯,連接不上。
心一想,能不能刪除之前運行的rabbitmq容器,然后重新啟動個,並且指定另外一個賬號和對應的密碼。
說干就干,Xshell6 連接騰訊雲:
1)docker stop 當前rabbitmq容器。
2)docker rmi 鏡像id。
3) docker run -d --hostname my-rabbit --name rabbit -e RABBITMQ_DEFAULT_USER=自己賬號-e RABBITMQ_DEFAULT_PASS=自己密碼-p 15672:15672 -p 5672:5672 rabbitmq:management (也可以先docker pull rabbitmq:management 然后再啟動。)
登入 http://ip:15672管理頁面,新增代碼中設置的 "myqueue"隊列。
項目中的.yml文件此時改成:
啟動項目,乃乃滴,還是不行,報套接字問題,管理頁面上看了下,還有剛才docker中啟動時端口看了下,果斷換成5672端口。
最終.yml配置文件為:
再次啟動項目,終於運行起來了,刷新下rabbitmq管理頁:
然后測試一下項目發送消息,看看能否監聽到消息:
這就是瞎搞的結果,下班后干到現在才把這簡單的東西走通,不過不折騰,哪里會知道其中有這么多細節呢。
后面嘗試下用這個推送消息到android客戶端。(該功能已實現,點擊查看)