常用的nginx。位於網路7層之上的http層,針對http應用做一些分流的策略。
nginx單台機器可以承受2w到3w的併發量。
任何一台伺服器都有乙個極限,一旦訪問量到了這個點,效能會急劇惡化。最大併發5w,實際上可能3-4w就會引發效能惡化,然後拖著到極限,最後宕機。
隨著併發流量的增加,反向**已經不能滿足需要。需要進行dns負載均衡到nginx集群中。
dns負責提供網域名稱解析服務,當訪問某個站點時,實際上首先需要通過該站點網域名稱的dns伺服器來獲取網域名稱指向的ip位址,在這一過程中,dns伺服器完成了網域名稱到ip位址的對映,同樣,這樣對映也可以是一對多的,這時候,dns伺服器便充當了負載均衡排程器
作為排程器,dns伺服器本身的效能幾乎不用擔心。因為dns記錄可以被使用者瀏覽器或者網際網路接入服務商的各級dns伺服器快取,只有當快取過期後才會重新向網域名稱的dns伺服器請求解析。也說是dns不存在http的吞吐率限制,理論上可以無限增加實際伺服器的數量。
nat伺服器:它工作在傳輸層(第四層),它可以修改傳送來的ip資料報,將資料報的目標位址修改為實際伺服器位址。
作為排程器的nat伺服器可以將吞吐率提公升到乙個新的高度,幾乎是反向**伺服器的兩倍以上,這大多歸功於在核心中進行請求**的較低開銷。
但是它的瓶頸在於nat伺服器的網路頻寬,包括內部網路和外部網路
nat是工作在網路分層模型的傳輸層(第四層),而直接路由是工作在資料鏈路層(第二層)
它通過修改資料報的目標mac位址(沒有修改目標ip),將資料報**到實際伺服器上,不同的是,實際伺服器的響應資料報將直接傳送給客戶羰,而不經過排程器。
常用產品有f5交換機、array。
nginx此時就作為lvs或者array的節點來使用,具體lvs或array的是選擇是根據公司規模和預算來選擇,array的應用交付功能非常強大,本人在某專案中使用過,價效比也遠高於f5,商用首選!但是一般來說這階段相關人才跟不上業務的提公升,所以購買商業負載均衡已經成為了必經之路。
PHP高併發和大流量的解決方案
第乙個要說的就是資料庫,首先要有乙個很好的架構,查詢盡量不用 避免相關子查詢 給經常查詢的新增索引 用排序來取代非順序訪問,如果條件允許 一般mysql伺服器最好安裝在linux作業系統中 關於apache和nginx在高併發的情況下推薦使用nginx,ginx是apache伺服器不錯的替代品。ng...
PHP高併發和大流量解決方案整理
一 高併發的概念 在網際網路時代,併發,高併發通常是指併發訪問。也就是在某個時間點,有多少個訪問同時到來。二 高併發架構相關概念 1 qps 每秒查詢率 每秒鐘請求或者查詢的數量,在網際網路領域,指每秒響應請求數 指http請求 2 pv page view 綜合瀏覽量,即頁面瀏覽量或者點選量,乙個...
高併發解決方案
時常看到高併發的問題,但高併發其實是最不需要考慮的東西。為何,他虛無縹緲,很少有 真的需要這些東西,而且其中很多技術,其實你已經在用了。有這個意識就夠了,不需要時刻盯著這個問題。只有很少的 真的能達到高併發。簡單做乙個歸納,從低成本 高效能和高擴張性的角度來說有如下處理方案 1 html靜態化 2 ...