400-638-8808
|
微信公眾號(hào)








穩(wěn)定可靠 永不間斷

海外收發(fā) 暢通無(wú)阻

協(xié)同辦公 資源管理

超大郵件 超級(jí)功能

智能反垃圾郵件技術(shù)
易管理 免維護(hù)

微信掃一掃 關(guān)注"天下數(shù)據(jù)"商品一律九折
![]()
搜索"朗玥科技"關(guān)注,了解最新優(yōu)惠


高并發(fā)和大流量
解決方案
#高并發(fā)架構(gòu)相關(guān)概念#
并發(fā):
在操作系統(tǒng)中,是指一個(gè)時(shí)間段中有幾個(gè)程序都處于已啟動(dòng)運(yùn)行到運(yùn)行完畢之間,且這幾個(gè)程序都是在同一個(gè)處理機(jī)上運(yùn)行,但任意一個(gè)時(shí)刻上只有一個(gè)程序在處理機(jī)上運(yùn)行。
我們說(shuō)的高并發(fā)是什么?
上面的定義明顯不是我們通常所言的并發(fā),在互聯(lián)網(wǎng)時(shí)代,所講的并發(fā)、高并發(fā),通常是指并發(fā)訪問(wèn)。也就是在某個(gè)時(shí)間點(diǎn),有多少個(gè)訪問(wèn)同時(shí)到來(lái)通常如果一個(gè)系統(tǒng)的日PV在千萬(wàn)以上,有可能是一個(gè)高并發(fā)的系統(tǒng),但是有的公司完全不走技術(shù)路線,全靠機(jī)器堆,這不在我們的討論范圍。
高并發(fā)的問(wèn)題,我們具體該關(guān)心什么?
QPS:每秒鐘請(qǐng)求或者查詢的數(shù)量,在互聯(lián)網(wǎng)領(lǐng)域,指每秒響應(yīng)請(qǐng)求數(shù)(指HTTP請(qǐng)求)
吞吐量:單位時(shí)間內(nèi)處理的請(qǐng)求數(shù)量(通常由QPS與并發(fā)數(shù)決定)
響應(yīng)時(shí)間:從請(qǐng)求發(fā)出到收到響應(yīng)花費(fèi)的時(shí)間,例如系統(tǒng)處理一個(gè)HTTP請(qǐng)求需要100ms,這個(gè)100ms就是系統(tǒng)的響應(yīng)時(shí)間
PV:綜合瀏覽量(Page View),即頁(yè)面瀏覽量或者點(diǎn)擊量,一個(gè)訪客在24小時(shí)內(nèi)訪問(wèn)的頁(yè)面數(shù)量,同一個(gè)人瀏覽你的網(wǎng)站同一頁(yè)面,只記作一次PV
UV:獨(dú)立訪問(wèn)(UniQue Visitor),即一定時(shí)間范圍內(nèi)相同訪客多次訪問(wèn)網(wǎng)站,只計(jì)算為1個(gè)獨(dú)立訪客
帶寬:計(jì)算帶寬大小需關(guān)注兩個(gè)指標(biāo),峰值流量和頁(yè)面的平均大小
日網(wǎng)站帶寬=PV/統(tǒng)計(jì)時(shí)間(換算到秒)*平均頁(yè)面大小(單位KB)*8
峰值一般是平均值的倍數(shù),根據(jù)實(shí)際情況來(lái)定
QPS不等于并發(fā)連接數(shù)
QPS是每秒HTTP請(qǐng)求數(shù)量,并發(fā)連接數(shù)是系統(tǒng)同時(shí)處理的請(qǐng)求數(shù)量
(總PV數(shù)*80%)/(6小時(shí)秒數(shù)*20%)=峰值每秒請(qǐng)求數(shù)(QPS)
80%的訪問(wèn)量集中在20%的時(shí)間。!
QPS達(dá)到極限,各種情況如何處理?
隨著QPS的增長(zhǎng),每個(gè)階段需要根據(jù)實(shí)際情況來(lái)進(jìn)行優(yōu)化,優(yōu)化的方案也與硬件條件、網(wǎng)絡(luò)帶寬息息相關(guān)。
QPS達(dá)到50
可以稱(chēng)之為小型網(wǎng)站,一般的服務(wù)器就可以應(yīng)付
QPS達(dá)到100
假設(shè)關(guān)系型數(shù)據(jù)庫(kù)的每次請(qǐng)求在0.01秒完成
假設(shè)單頁(yè)面只有一個(gè)SQL查詢,那么100QPS意味這1秒鐘完成100次請(qǐng)求,但是此時(shí)我們并不能保證數(shù)據(jù)庫(kù)查詢能完成100次
方案:數(shù)據(jù)庫(kù)緩存層、數(shù)據(jù)庫(kù)的負(fù)載均衡
QPS達(dá)到800
假設(shè)我們使用百兆帶寬,意味著網(wǎng)站出口的實(shí)際帶寬是8M左右
假設(shè)每個(gè)頁(yè)面只有10k,在這個(gè)并發(fā)條件下,百兆帶寬已經(jīng)吃完
方案:CDN加速、負(fù)載均衡
QPS達(dá)到1000
假設(shè)使用Memcache緩存數(shù)據(jù)庫(kù)查詢數(shù)據(jù),每個(gè)頁(yè)面對(duì)Memcache的請(qǐng)求遠(yuǎn)大于直接對(duì)DB的請(qǐng)求
Memcache的悲觀并發(fā)數(shù)在2W左右,但有可能在之前內(nèi)網(wǎng)帶寬已經(jīng)吃光,表現(xiàn)出不穩(wěn)定
方案:靜態(tài)HTML緩存
QPS達(dá)到2000
這個(gè)級(jí)別下,文件系統(tǒng)訪問(wèn)鎖都成為災(zāi)難
方案:做業(yè)務(wù)分離,分布式存儲(chǔ)
#三種高并發(fā)解決方案#
一、數(shù)據(jù)庫(kù)緩存層的優(yōu)化
什么是數(shù)據(jù)庫(kù)緩存?
MySQL等一些常見(jiàn)的關(guān)系型數(shù)據(jù)庫(kù)的數(shù)據(jù)都存儲(chǔ)在磁盤(pán)中,在高并發(fā)場(chǎng)景下,業(yè)務(wù)應(yīng)用對(duì)MySQL產(chǎn)生的增、刪、改、查的操作造成巨大的I/O開(kāi)銷(xiāo)和查詢壓力,這無(wú)疑對(duì)數(shù)據(jù)庫(kù)和服務(wù)器都是一種巨大的壓力,為了解決此類(lèi)問(wèn)題,緩存數(shù)據(jù)的概念應(yīng)運(yùn)而生
為什么是要使用緩存?
緩存數(shù)據(jù)是為了讓客戶端很少甚至不訪問(wèn)數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行數(shù)據(jù)的查詢,高并發(fā)下,能最大程度的降低對(duì)數(shù)據(jù)庫(kù)服務(wù)器的訪問(wèn)壓力極大地解決數(shù)據(jù)庫(kù)服務(wù)器的壓力
提高應(yīng)用數(shù)據(jù)的響應(yīng)速度
用戶請(qǐng)求-->數(shù)據(jù)查詢-->連接數(shù)據(jù)庫(kù)服務(wù)器并查詢數(shù)據(jù)-->將數(shù)據(jù)緩存起來(lái)(HTML、內(nèi)存、JSON、序列化數(shù)據(jù))-->顯示給客戶端
用戶再次請(qǐng)求或者新用戶訪問(wèn)-->數(shù)據(jù)查詢-->直接從緩存中獲取數(shù)據(jù)-->顯示給客戶端
二、CDN加速
什么是CDN?
CDN的全稱(chēng)是Content Delivery Network,即內(nèi)容分發(fā)網(wǎng)絡(luò),盡可能避開(kāi)互聯(lián)網(wǎng)上有可能影響數(shù)據(jù)傳輸速度和穩(wěn)定性的瓶頸和環(huán)節(jié),使內(nèi)容傳輸?shù)母臁⒏(wěn)定
在網(wǎng)絡(luò)各處放置節(jié)點(diǎn)服務(wù)器所構(gòu)成的在現(xiàn)有的互聯(lián)網(wǎng)基礎(chǔ)之上的一層智能虛擬網(wǎng)絡(luò)
CDN系統(tǒng)能夠?qū)崟r(shí)地根據(jù)網(wǎng)絡(luò)流量和各節(jié)點(diǎn)的連接、負(fù)載狀況以及到用戶的距離和響應(yīng)時(shí)間等綜合信息將用戶的請(qǐng)求重新導(dǎo)向離用戶最近的服務(wù)節(jié)點(diǎn)上
使用CDN的優(yōu)勢(shì)?
本地Cache加速,提高了企業(yè)站點(diǎn)(尤其含有大量圖片和靜態(tài)頁(yè)面站點(diǎn))的訪問(wèn)速度
跨運(yùn)營(yíng)商的網(wǎng)絡(luò)加速,保證不同網(wǎng)絡(luò)的用戶都得到良好的訪問(wèn)質(zhì)量
遠(yuǎn)程訪問(wèn)用戶根據(jù)DNS負(fù)載均衡技術(shù)智能自動(dòng)選擇Cache服務(wù)器
自動(dòng)生成服務(wù)器的遠(yuǎn)程Mirror(鏡像)cache服務(wù)器,遠(yuǎn)程用戶訪問(wèn)時(shí)從cache服務(wù)器上讀取數(shù)據(jù),減少遠(yuǎn)程訪問(wèn)的帶寬,分擔(dān)網(wǎng)絡(luò)流量,減輕原站點(diǎn)WEB服務(wù)器負(fù)載等功能
廣泛分布的CDN節(jié)點(diǎn)加上節(jié)點(diǎn)之間的智能冗余機(jī)制,可以有效地預(yù)防黑客入侵
三、Web服務(wù)器的負(fù)載均衡、請(qǐng)求分發(fā)
七層負(fù)載均衡的實(shí)現(xiàn)
基于URL等應(yīng)用信息的負(fù)載均衡
Nginx的proxy是它一個(gè)很強(qiáng)大的功能,實(shí)現(xiàn)了7層負(fù)載均衡
Nginx實(shí)現(xiàn)的優(yōu)點(diǎn)
功能強(qiáng)大,性能卓越,運(yùn)行穩(wěn)定
配置簡(jiǎn)單靈活
能夠自動(dòng)剔除工作不正常的后端服務(wù)器
上傳文件使用異步模式
支持多種分配策略,可以分配權(quán)重,分配方式靈活
Nginx負(fù)載均衡
內(nèi)置策略,擴(kuò)展策略
內(nèi)置策略:IP Hash、加權(quán)輪詢
擴(kuò)展策略:fair策略、通用hash、一致性hash
加權(quán)輪詢策略
首先將請(qǐng)求都分給高權(quán)重的機(jī)器,直到該機(jī)器的權(quán)值降到了比其他機(jī)器低,才開(kāi)始將請(qǐng)求分給下一個(gè)高權(quán)重的機(jī)器
當(dāng)所有后端機(jī)器都down掉時(shí),Nginx會(huì)立即將所有機(jī)器的標(biāo)志位清成初始狀態(tài),以避免造成所有的機(jī)器都處于timeout的狀態(tài)
IP Hash策略
Nginx內(nèi)置的另一個(gè)負(fù)載均衡的策略,流程和輪詢很類(lèi)似,只是七種的算法和具體的策略有些變化
IP Hash算法是一種變相的輪詢算法
天下數(shù)據(jù)在全球超過(guò)120個(gè)國(guó)家部署數(shù)據(jù)中心,提供海外全球多個(gè)國(guó)家服務(wù)器租用,所有服務(wù)器均可根據(jù)需求配置大帶寬大流量,美國(guó)G口獨(dú)享大帶寬服務(wù)器,從此告別網(wǎng)絡(luò)擁堵;
產(chǎn)品與服務(wù)
香港服務(wù)器 香港高防服務(wù)器 美國(guó)服務(wù)器 韓國(guó)服務(wù)器 新加坡服務(wù)器 日本服務(wù)器 臺(tái)灣服務(wù)器云服務(wù)器
香港云主機(jī) 美國(guó)云主機(jī) 韓國(guó)云主機(jī) 新加坡云主機(jī) 臺(tái)灣云主機(jī) 日本云主機(jī) 德國(guó)云主機(jī) 全球云主機(jī)高防專(zhuān)線
海外高防IP 海外無(wú)限防御 SSL證書(shū) 高防CDN套餐 全球節(jié)點(diǎn)定制 全球?qū)>GPLC關(guān)于我們
關(guān)于天下數(shù)據(jù) 數(shù)據(jù)招商加盟 天下數(shù)據(jù)合作伙伴 天下數(shù)據(jù)團(tuán)隊(duì)建設(shè) 加入天下數(shù)據(jù) 媒體報(bào)道 榮譽(yù)資質(zhì) 付款方式關(guān)注我們
微信公眾賬號(hào)
新浪微博
天下數(shù)據(jù)手機(jī)站 關(guān)于天下數(shù)據(jù) 聯(lián)系我們 誠(chéng)聘英才 付款方式 幫助中心 網(wǎng)站備案 解決方案 域名注冊(cè) 網(wǎng)站地圖
天下數(shù)據(jù)18年專(zhuān)注海外香港服務(wù)器、美國(guó)服務(wù)器、海外云主機(jī)、海外vps主機(jī)租用托管以及服務(wù)器解決方案-做天下最好的IDC服務(wù)商
《中華人民共和國(guó)增值電信業(yè)務(wù)經(jīng)營(yíng)許可證》 ISP證:粵ICP備07026347號(hào)
朗信天下發(fā)展有限公司(控股)深圳市朗玥科技有限公司(運(yùn)營(yíng))聯(lián)合版權(quán)
深圳總部:中國(guó).深圳市南山區(qū)深圳國(guó)際創(chuàng)新谷6棟B座10層 香港總部:香港上環(huán)蘇杭街49-51號(hào)建安商業(yè)大廈7樓
7×24小時(shí)服務(wù)熱線:4006388808香港服務(wù)電話:+852 67031102
本網(wǎng)站的域名注冊(cè)業(yè)務(wù)代理北京新網(wǎng)數(shù)碼信息技術(shù)有限公司的產(chǎn)品