隨著業(yè)務(wù)體系的發(fā)展,可能會(huì)將一個(gè)大的業(yè)務(wù)系統(tǒng)拆分成多個(gè)子系統(tǒng)部署在不同服務(wù)器之上,此時(shí)業(yè)務(wù)間可能會(huì)存在跨服務(wù)器調(diào)用的情況。基于這種場(chǎng)景也是有很多解決方案的。
基于反向代理實(shí)現(xiàn)請(qǐng)求轉(zhuǎn)發(fā)
反向代理服務(wù)器它隱藏了真實(shí)的服務(wù)端,一個(gè)大型網(wǎng)站有很多后端服務(wù)器,為便于管理會(huì)將一部分的服務(wù)器由某個(gè)(或多個(gè))前端代理服務(wù)器進(jìn)行代理管理,請(qǐng)求先經(jīng)過代理服務(wù)器,然后根據(jù)一定規(guī)則(如:指定URL、根據(jù)域名)將請(qǐng)求轉(zhuǎn)發(fā)至不同的后端服務(wù)器進(jìn)行處理,處理好了再返回給客戶端。
用主流的Nginx來(lái)實(shí)現(xiàn)反向代理很容易。
基于代碼實(shí)現(xiàn)請(qǐng)求轉(zhuǎn)發(fā)(Forward)
Forward轉(zhuǎn)發(fā)時(shí)瀏覽器里的URL不會(huì)改變,但是請(qǐng)求已經(jīng)轉(zhuǎn)發(fā)給其它頁(yè)面處理了。
基于API實(shí)現(xiàn)業(yè)務(wù)調(diào)用
這種模式實(shí)現(xiàn)起來(lái)也比較方便,B服務(wù)器上提供API給A服務(wù)器調(diào)用即可。
以上就是我的觀點(diǎn),對(duì)于這個(gè)問題大家是怎么看待的呢?歡迎在下方評(píng)論區(qū)交流~我是科技領(lǐng)域創(chuàng)作者,十年互聯(lián)網(wǎng)從業(yè)經(jīng)驗(yàn),我了解更多科技知識(shí)!