国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

幫助中心 >  行業(yè)資訊 >  網(wǎng)絡(luò)安全 >  網(wǎng)站應(yīng)對突發(fā)高并發(fā)帶來的問題及解決方案

網(wǎng)站應(yīng)對突發(fā)高并發(fā)帶來的問題及解決方案

2020-10-03 14:53:36 1358


一、一般什么情況下網(wǎng)站會產(chǎn)生突發(fā)高并發(fā)情況?

1. 如果是自己官網(wǎng)做活動或者有特別事件,忽然涌入大量真實(shí)用戶導(dǎo)致服務(wù)器扛不住,那只能怪你沒提前準(zhǔn)備好服務(wù)器和帶寬,所以加入一個(gè)好的CDN,做好網(wǎng)站資源緊張時(shí)候的預(yù)備措施是十分必要的。

2.如果是未知流量,可能是流量型攻擊。

 

二、帶來的問題及解決方法:

1.高并發(fā)、服務(wù)器壓力大、性能變差。
解決方法:不把mysql部署到服務(wù)器里面,先請求服務(wù)器,服務(wù)器再去請求mysql數(shù)據(jù),可以做多機(jī)集群,大致分為三步,主從同步、讀寫分離、主備切換,一兩個(gè)數(shù)據(jù)庫肯定支持不了大量的數(shù)據(jù)訪問請求的,所以要集成多個(gè)數(shù)據(jù)庫,在多個(gè)數(shù)據(jù)庫里確定一個(gè)主數(shù)據(jù)庫用于插入數(shù)據(jù),然后查詢通過從數(shù)據(jù)庫查詢出來。

(1)主從同步 就是在主數(shù)據(jù)庫插入數(shù)據(jù)后把數(shù)據(jù)生成一個(gè)二進(jìn)制的文件,并授權(quán)一個(gè)賬號,然后從數(shù)據(jù)庫利用賬號把二進(jìn)制文件解析到自己庫里,發(fā)送請求到數(shù)據(jù)庫,它不知道該訪問哪個(gè)數(shù)據(jù)庫就要進(jìn)行讀寫分離了。

(2)讀寫分離這時(shí)就要通過一個(gè)負(fù)載均衡器來分發(fā)請求給主從數(shù)據(jù)庫,負(fù)載均衡器管理著主從數(shù)據(jù)庫的ip和端口號,自己也向外暴露一個(gè)請求能訪問的ip,負(fù)載均衡器的配置文件通過管理主從數(shù)據(jù)庫的ip和端口號來指定數(shù)據(jù)庫是查詢還是添加修改,這就做到了讀寫分離,如果出現(xiàn)單點(diǎn)故障就是負(fù)載均衡器掛了。

(3)主備切換最好的解決辦法是使用備用負(fù)載均衡器,主的均衡器和副的均衡器通過第三方插件keepalive來建立聯(lián)系,它們之間會一直發(fā)送心跳查詢,如果主的掛了馬上切換到備用負(fù)載均衡器。

 

2.容易產(chǎn)生單點(diǎn)故障。

解決方法:做服務(wù)器tomcat集群,使用多個(gè)tomcat來解決單點(diǎn)故障問題,服務(wù)器集群有兩個(gè)特性。(一)可擴(kuò)展的,因?yàn)樗軇討B(tài)的添加服務(wù)器,(二)可用性高,當(dāng)一個(gè)服務(wù)器掛掉了,會提供一個(gè)正常的其它服務(wù)器來繼續(xù)提供服務(wù),集群有兩大作用,一是負(fù)載均衡,負(fù)載均衡器會根據(jù)每個(gè)服務(wù)器的性能高低合理分配任務(wù),二是容錯(cuò)恢復(fù)當(dāng)一個(gè)服務(wù)器掛掉了,會提供一個(gè)正常的其它服務(wù)器來繼續(xù)提供服務(wù),我們一般使用Nginx服務(wù)器作為分發(fā)任務(wù)請求的負(fù)載均衡器,然后向外暴露端口號和ip,一旦請求進(jìn)來,Nginx會根據(jù)tomcat性能情況分發(fā)。Nginx之間也是通過Keepalive來保證狀態(tài)的。

 

3.所有的靜態(tài)資源(img、html、css、js)都交給了tomcat來處理,導(dǎo)致性能下降。

解決辦法:通過使用Redis集群管理靜態(tài)資源,當(dāng)需要緩存的靜態(tài)資源越來越多,我們就要集多臺機(jī)器做中央緩存,把查詢出來的資源寫入Redis的中央緩存里,然后通過另一個(gè)Redis讀取出來,因?yàn)镽edis是鍵值對的存儲結(jié)構(gòu),可以通過jsessionId作為key,然后通過這個(gè)key去查詢對應(yīng)的value,key存入cookie里,再去Redis取到Value值,如果訪問后臺先去Redis查找,查找不到再去數(shù)據(jù)庫查詢,然后把查詢結(jié)果存入Redis里。Redis做集群需要twmprox代理服務(wù)器來管理多個(gè)Redis,并且通過備用twmproxy防止單點(diǎn)故障,主備之間也是使用keepalive建立聯(lián)系,上面整個(gè)分布式集群可以通過cdn(內(nèi)容分發(fā)網(wǎng)絡(luò))部署到全國各大地區(qū),以提高訪問速度。

 

針對以上網(wǎng)站會產(chǎn)生突發(fā)高并發(fā)情況的原因,這邊藍(lán)隊(duì)云隊(duì)長建議大家可以升級服務(wù)器的配置以及購買藍(lán)隊(duì)云CDN加速哦。具體的可以咨詢藍(lán)隊(duì)云客服:4006-75-4006.

 

 

 


提交成功!非常感謝您的反饋,我們會繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問題: