發(fā)布時間:2020-08-06 作者:未知
網(wǎng)站流量大ip并發(fā)高怎么辦
所謂服務(wù)器大流量高并發(fā)是指:在同一時間或很短的時間內(nèi),大量的請求到達服務(wù)器,每個請求都需要服務(wù)器消耗資源進行處理并做出相應(yīng)的反饋。
如何處理高并發(fā)性問題
從服務(wù)器的角度來看,高并發(fā)性:服務(wù)器在處理請求時需要消耗服務(wù)器的資源,比如可以同時啟動的進程數(shù),可以同時運行的線程數(shù),網(wǎng)絡(luò)連接數(shù),CPU,I/O,內(nèi)存,由于服務(wù)器的資源有限,服務(wù)器可以同時處理的請求也受到限制。
高并發(fā)帶來的問題:高并發(fā)問題的本質(zhì)是資源的限制。因此,當(dāng)出現(xiàn)高并發(fā)時,服務(wù)器的處理和響應(yīng)將變得越來越慢,甚至部分請求將被丟棄而不被處理。更嚴(yán)重的是,服務(wù)器將崩潰。
高并發(fā)處理的一般思想和方法
高并發(fā)處理的基本思想
1) 從客戶端來說,我們應(yīng)該盡量減少請求的數(shù)量,比如根據(jù)客戶端自身的緩存或者處理能力;我們應(yīng)該盡量減少對服務(wù)器端資源的不必要的消耗,比如重用一些資源,比如連接池??蛻舳颂幚淼幕驹瓌t是:如果無法訪問服務(wù)器,請不要訪問它。
2)從服務(wù)器端,增加資源供給,如更大的網(wǎng)絡(luò)帶寬、更高配置的服務(wù)器、高性能的web服務(wù)器、高性能的數(shù)據(jù)庫;請求分流,如集群和分布式體系結(jié)構(gòu);應(yīng)用優(yōu)化,如采用更高效的編程語言優(yōu)化算法處理業(yè)務(wù)邏輯,優(yōu)化SQL對數(shù)據(jù)庫的訪問。簡言之,基本原則是分而治之,提高單個請求的處理速度。
高并發(fā)處理的基本方法
1) 在請求級,常用的手段有:盡量充分利用瀏覽器的緩存功能,減少對服務(wù)器的訪問,如JS、CSS、圖片等;考慮使用壓縮傳輸功能,減少網(wǎng)絡(luò)流量,提高傳輸速度;考慮采用異步請求獲取數(shù)據(jù)分批。
2) 前端接收客戶端請求的常用方法有:靜態(tài)和動態(tài)分離,部分靜態(tài)資源可以直接從nginx返回;根據(jù)不同的請求,分配到不同的后端進行處理,如負載均衡、業(yè)務(wù)拆分訪問等。;增加一層來平衡多個nginx的負載,如LVS、F5等;前端也可以使用CDN服務(wù);可以緩存動態(tài)內(nèi)容,以減少對后端服務(wù)的訪問。
3) 在web服務(wù)器級別,常用的方法包括:使用最新的JVM并優(yōu)化配置;優(yōu)化web服務(wù)器的配置,如調(diào)整內(nèi)存和線程的數(shù)量;提供多個可以提供相同服務(wù)的web服務(wù)器來實現(xiàn)負載平衡;仔細規(guī)劃部署在上的應(yīng)用程序規(guī)模web服務(wù)器;群集web服務(wù)器。
4) 在web應(yīng)用層,常用的手段有:靜態(tài)動態(tài)內(nèi)容、java開發(fā)優(yōu)化、業(yè)務(wù)邏輯算法優(yōu)化、緩存的合理高效使用;優(yōu)化數(shù)據(jù)庫SQL訪問,可以考慮使用存儲過程等數(shù)據(jù)庫功能;合理使用多線程技術(shù),加快業(yè)務(wù)處理速度;部分業(yè)務(wù)可以考慮內(nèi)存數(shù)據(jù)庫或純內(nèi)存處理;盡量避免遠程調(diào)用和大量I/O等耗時操作;合理規(guī)劃事務(wù)等資源消耗操作;合理使用異步處理;考慮對部分業(yè)務(wù)采用預(yù)處理或預(yù)計算,減少實時計算;盡量在內(nèi)部系統(tǒng)間直接調(diào)用和處理業(yè)務(wù),減少WebService和工作流。
5)在數(shù)據(jù)庫級,常用的手段有:合理選擇數(shù)據(jù)庫引擎,如MySQL InnoDB和MyISAM引擎;配置優(yōu)化;考慮使用存儲過程處理復(fù)雜的數(shù)據(jù)邏輯;數(shù)據(jù)庫集群、讀寫分離;合理設(shè)計數(shù)據(jù)庫表結(jié)構(gòu)、索引等;子數(shù)據(jù)庫、子數(shù)據(jù)庫表,減少單個數(shù)據(jù)庫和單個表中的數(shù)據(jù)量。
騰佑科技,十幾年的老牌idc服務(wù)商,提供服務(wù)器租用,服務(wù)器托管,云服務(wù)器等等,了解更多服務(wù)器的配置和報價,詳情咨詢我們,為您優(yōu)惠多多。