GatewayWorker部署在阿里云,想在其它主機(jī)用GatewayClient發(fā)送消息
?
一、如果Gateway啟動(dòng)文件中l(wèi)anIp設(shè)置為127.0.0.1或0.0.0.0,客戶端可以正常連接websocket,但GatewayClient會(huì)按照127.0.0.1或0.0.0.0的ip進(jìn)行連接,肯定失敗。
?
二、如果Gateway啟動(dòng)文件中l(wèi)anIp設(shè)置為阿里云主機(jī)的外網(wǎng)ip,啟動(dòng)GatewayWorker服務(wù)的時(shí)候,會(huì)一直報(bào)錯(cuò):
stream_socket_server(): unable to connect to tcp://xx.xx.xx.xx:xxx (Cannot assign requested address)查看文檔,應(yīng)該是阿里云服務(wù)器的問題:
如果您是云服務(wù)器(阿里云/騰訊云等)用戶,注意您的公網(wǎng)ip實(shí)際可能是個(gè)代理ip(例如阿里云的專有網(wǎng)絡(luò)),公網(wǎng)ip并不屬于當(dāng)前的服務(wù)器,所以無法通過公網(wǎng)ip監(jiān)聽。雖然不能用公網(wǎng)ip監(jiān)聽,但是仍然可以通過0.0.0.0來綁定。
?
現(xiàn)在問題卡到這了,請(qǐng)大佬指點(diǎn),有什么解決的辦法?
@614:感謝您的耐心回復(fù),我明天準(zhǔn)備按這個(gè)文檔里http://doc2.workerman.net/push-in-other-project.html的【方法三】試一下,感覺應(yīng)該能行
@5391: 不用謝。我認(rèn)為方法三一樣是行不通的,和你現(xiàn)在使用gatewayclient一樣,條件不滿足,換句話就是: