幫助中心
香港服務(wù)器租用幫助
香港服務(wù)器架設(shè)網(wǎng)站反向代理有什么優(yōu)勢
2018-07-02 16:07:42

反向代理的主要作用是分發(fā)請求。

首先我們要了解系統(tǒng)的性能瓶頸在哪里,一般來說網(wǎng)絡(luò)io速度和內(nèi)存io接近,都遠高于磁盤io。假定一個接口請求返回數(shù)據(jù)100k(一般沒有這么大,只是假定一個方便計算的值),10個并發(fā)請求就是1M,那么全雙工千兆網(wǎng)卡(現(xiàn)在還有萬兆網(wǎng)卡,但成本太高,應(yīng)用還不廣),可以支撐并發(fā)10000個請求,開雙網(wǎng)卡,理論的上限就是20000個并發(fā)請求。

假設(shè)我們收到請求馬上就返回,那么最高并發(fā)數(shù)就是我們上面計算的結(jié)果,但是,問題在于,應(yīng)用香港服務(wù)器做不到馬上返回,因為它有很多業(yè)務(wù)邏輯需要執(zhí)行處理,比如給用戶發(fā)推送發(fā)短信發(fā)郵件,本地磁盤寫日志,請求數(shù)據(jù)庫增刪改查,調(diào)用微信的登錄接口等等等等,都附加了各個層面的io。

所以第一層的優(yōu)化,我們會盡量優(yōu)化應(yīng)用服務(wù)自身,把發(fā)推送發(fā)短信發(fā)郵件的活推到隊列,讓別的香港服務(wù)器去干。這個一般用內(nèi)存隊列,io很高。

開多線程或者協(xié)程的方式異步寫日志,但再怎么優(yōu)化,磁盤io的上限突破不了,這個io很低。還有更激進的方案,干脆日志也寫內(nèi)存,或者通過內(nèi)網(wǎng)網(wǎng)絡(luò)同步到別的香港服務(wù)器上,可以更優(yōu)化。

數(shù)據(jù)庫復(fù)用連接池,減少連接和斷開的時間開銷。查詢語句盡量優(yōu)化,減少等待數(shù)據(jù)庫操作的時間。當然,再怎么優(yōu)化,一樣有個上限。

調(diào)用微信的登錄接口等外部接口,這個就更難辦了,受制于人,除了tcp連接池復(fù)用能稍微優(yōu)化一點點,完全是取決于外部條件。

木桶理論取最短板,所有這些條件里,總有最慢最落后的那個。假如拖后腿的這個,最佳狀態(tài)也只能優(yōu)化到支持2000個并發(fā),那就尷尬了,本來能支持20000個請求的系統(tǒng),只能用到1/10性能。

( 當然也可以在dns對應(yīng)不同ip方式分布請求,但是dns層面的分布更復(fù)雜更麻煩,因為dns緩存的原因,請求也不能均勻分布,而且ip地址也是越來越稀缺的資源,沒有背景沒有后臺的,搞這么多ip也不容易啊 )

單個公網(wǎng)ip算一個節(jié)點的話,這個節(jié)點本來的潛力是響應(yīng)20000個并發(fā)請求,實際在應(yīng)用層面只能到2000并發(fā),潛力還未發(fā)掘啊。這個時候,就是反向代理起到用武之地的時候了。

首先一個反向代理的香港服務(wù)器拋開所有業(yè)務(wù)層的東西,只單純的接下請求再返回,那么可以支持到20000并發(fā)了。接下來應(yīng)用層面誰來處理?找來10個小弟,轉(zhuǎn)發(fā)給他們,每人2000正好。這樣這個節(jié)點系統(tǒng)雖然性價比只有10/11,但是性能潛力好歹挖盡了。

這就是反向代理的作用了。

USA-IDC特推出香港服務(wù)器租用折扣,先抽券后下單,售完即止歡迎點擊下圖了解詳情

新客優(yōu)惠
特價 酷睿i3系列
性價比熱銷推薦,年銷量第一
1180/月起
USA-IDC為您提供免備案服務(wù)器 0元試用
立即聯(lián)系在線客服,即可申請免費產(chǎn)品試用服務(wù)
立即申請