由于此問(wèn)題并沒(méi)有闡明清楚是在什么情況下做到這兩個(gè)ip服務(wù)器之間訪問(wèn),所以下面自己能通過(guò)服務(wù)器之間直接互ping、前端開(kāi)發(fā)處理方式和后端開(kāi)發(fā)處理方式這問(wèn)題來(lái)說(shuō)明。此問(wèn)題直觀問(wèn)題就是跨網(wǎng)段訪問(wèn)的問(wèn)題。
首先解決兩個(gè)服務(wù)器之間直接訪問(wèn)的問(wèn)題。以liunx服務(wù)器為例,由于處于不同網(wǎng)段或端口不允許ping,不能做到直接訪問(wèn)到服務(wù)器。這里面有很多高深知識(shí)和問(wèn)題,自己不是專業(yè)運(yùn)維人員,只能簡(jiǎn)單講一下處理這種問(wèn)題的思路。對(duì)于跨網(wǎng)段的問(wèn)題,可以通過(guò)添加路由方式解決,例如192.168.2.1不能ping通192.168.1.1,我們可以在192.168.2.1上執(zhí)行vi /etc/rc.local;然后在文件最后一行添加route add default gw 192.168.2.1;wq保存退出即可。
前端項(xiàng)目布署的服務(wù),由于現(xiàn)在前后端分離的開(kāi)發(fā)方式,HTTP同源策略安全模型的問(wèn)題就需要規(guī)避。因?yàn)樵诓煌琲p下的服務(wù)器,所以具體點(diǎn)就是跨域問(wèn)題。解決跨域問(wèn)題有很多方式,例如JSONP、iframe、CORS訪問(wèn)、Nginx反向代理等。在個(gè)人實(shí)際開(kāi)發(fā)工作中,前后端分離與Vue等前端框架的流行,以及nginx的強(qiáng)大,使用CORS和Nginx方式最為理想。
如果是后端項(xiàng)目布署的服務(wù)器之間訪問(wèn),以java為例,可以使用使http相關(guān)類實(shí)現(xiàn)數(shù)據(jù)訪問(wèn)。例如HttpUrlConnection和HttpClient等,前題是服務(wù)器之間沒(méi)做網(wǎng)絡(luò)安全策略。如果是通過(guò)tcp方式訪問(wèn)服務(wù),可以使用Socket來(lái)實(shí)現(xiàn)編程用于傳輸文件等。
隨著微服務(wù)的流行,類似springcloud的微服務(wù)直接就跟ip無(wú)關(guān)了,我們只需通過(guò)服務(wù)名發(fā)現(xiàn)就能做到直接訪問(wèn)。具體來(lái)說(shuō)就是192.168.1.1上的微服務(wù)注冊(cè)到eureka,192.168.2.1上的微服務(wù)也注冊(cè)在同一個(gè)eureka集群下,2.1就可以直接通過(guò)feign框架加上1.1注冊(cè)的服務(wù)名做到訪問(wèn)調(diào)用,而不用關(guān)心ip是多少。當(dāng)然也要考慮到微服務(wù)在多實(shí)例下負(fù)載均衡的問(wèn)題,因?yàn)椴荒鼙WC每次訪問(wèn)都能擊中192.168.1.1這臺(tái)服務(wù)器。單實(shí)例就不說(shuō)了,肯定是這一臺(tái)ip服務(wù)器上服務(wù)被訪問(wèn)到。
篇幅有限,不能做到面面俱到,其中不足之處請(qǐng)指出并斧正。對(duì)于此問(wèn)題還有什么補(bǔ)充的地方,也歡迎大家積極探討。
-
IP
+關(guān)注
關(guān)注
5文章
1805瀏覽量
152556 -
服務(wù)器
+關(guān)注
關(guān)注
13文章
9793瀏覽量
87945
發(fā)布評(píng)論請(qǐng)先 登錄

歐洲服務(wù)器免費(fèi)ip地址怎么獲取?#歐洲服務(wù)器 #免費(fèi)IP地址 #服務(wù)器

DNS服務(wù)器無(wú)法訪問(wèn)?2分鐘快速排查與解決!#DNS服務(wù)器 #DNS #服務(wù)器

評(píng)論