1. 正向代理
就是服務(wù)器作為代理拂檩,類(lèi)似跳板機(jī)侮腹,客服端不直接訪問(wèn)需要訪問(wèn)的服務(wù)器,而是通過(guò)代理服務(wù)器作為代理訪問(wèn)广恢,這里需要客戶(hù)端配置代理服務(wù)器凯旋。
- 反向代理服務(wù)器
通過(guò)nginx作為前端服務(wù)器,將請(qǐng)求轉(zhuǎn)發(fā)到后端服務(wù)器钉迷,再將后端服務(wù)器的結(jié)果返回客戶(hù)端至非,這里客戶(hù)端不需要配置代理服務(wù)器。
- 負(fù)載均衡
服務(wù)器集群需要將請(qǐng)求分發(fā)到不同服務(wù)器上糠聪,這個(gè)時(shí)候需要用到負(fù)載均衡技術(shù)荒椭。用nginx實(shí)現(xiàn)的負(fù)載均衡是通過(guò)反向代理實(shí)現(xiàn)。
3.1 負(fù)載均衡的策略有以下集中方式:
(1) weight輪詢(xún)(默認(rèn)):接收到的請(qǐng)求按照順序和權(quán)重值(weight)分配到不同的后端服務(wù)器舰蟆,權(quán)重越大被分配的幾率越大趣惠,如果某臺(tái)服務(wù)器宕機(jī)nginx會(huì)自動(dòng)把它從隊(duì)列剔除狸棍。
(2) ip_hash : 每個(gè)請(qǐng)求根據(jù)客戶(hù)端的ip 的hash結(jié)果進(jìn)行匹配,這樣的算法下一個(gè)固定的ip總會(huì)訪問(wèn)到同一臺(tái)服務(wù)器味悄,這在一定程度上能夠解決集群服務(wù)器環(huán)境下session共享的問(wèn)題草戈。
(3) Fair: 動(dòng)態(tài)地根據(jù)服務(wù)器請(qǐng)求處理到響應(yīng)時(shí)間進(jìn)行均衡分配,需要安裝upstream_fair模塊侍瑟。
(4) url_hash:根據(jù)url的hash結(jié)果分配請(qǐng)求唐片,固定url會(huì)發(fā)送到固定服務(wù)器。需要安裝nginx 的hash軟件包涨颜。