1. 程式人生 > >設計自己的高併發架構

設計自己的高併發架構

實現方式包括:硬體負載均衡、軟體負載均衡。

硬體負載均衡效率高,價格貴,如F5等;

軟體負載均衡系統價格低或免費,效率較硬體低,但一般夠用,如LVS,nginx也有負載均衡功能。

二、反向代理系統

在系統架構中加入反向代理。

作用一:將請求對映到對應服務的伺服器。首先需要劃分業務,並統一約定和規範各個業務對應服務的URI,然後通過反向代理伺服器將請求對映到各服務所在的伺服器。這樣可以避免在業務集中的情況下出現的單一功能發生瓶頸導致其他功能受到影響。(系統設計時,各業務服務應該按功能或模組進行拆分,便於進行橫向分散式擴充套件)

作用二:提高系統吞吐量。資料在網路中傳輸很耗時,反向代理伺服器可以使應用伺服器不必再直接和客戶端進行連線,阻塞程序等待資料接收完成,而是在反向代理伺服器將資料緩衝完成後一次性快速傳輸給應用伺服器。

作用三:對靜態資源不必通過應用伺服器,直接找到並返回,減輕應用伺服器壓力。

目前普遍使用Nginx作為反向代理伺服器,它還是高效能http伺服器,同時可以進行負載均衡。