秒杀活动的技术挑战
作者:李智慧
鏈接:https://www.zhihu.com/question/20496392/answer/17272255
來源:知乎
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
1. 秒殺活動(dòng)的技術(shù)挑戰(zhàn)
假設(shè)某網(wǎng)站秒殺活動(dòng)只推出一件商品,預(yù)計(jì)會(huì)吸引1萬人參加活動(dòng),也就說最大并發(fā)請(qǐng)求數(shù)是10000,秒殺系統(tǒng)需要面對(duì)的技術(shù)挑戰(zhàn)有:
對(duì)現(xiàn)有網(wǎng)站業(yè)務(wù)造成沖擊
秒殺活動(dòng)只是網(wǎng)站營銷的一個(gè)附加活動(dòng),這個(gè)活動(dòng)具有時(shí)間短,并發(fā)訪問量大的特點(diǎn),如果和網(wǎng)站原有應(yīng)用部署在一起,必然會(huì)對(duì)現(xiàn)有業(yè)務(wù)造成沖擊,稍有不慎可能導(dǎo)致整個(gè)網(wǎng)站癱瘓。
高并發(fā)下的應(yīng)用、數(shù)據(jù)庫負(fù)載
用戶在秒殺開始前,通過不停的刷新瀏覽器頁面以保證不會(huì)錯(cuò)過秒殺,這些請(qǐng)求如果按照一般的網(wǎng)站應(yīng)用架構(gòu),訪問應(yīng)用服務(wù)器、連接數(shù)據(jù)庫,會(huì)對(duì)應(yīng)用服務(wù)器、數(shù)據(jù)庫服務(wù)器造成極大的負(fù)載壓力。
突然增加的網(wǎng)絡(luò)及服務(wù)器帶寬
假設(shè)商品頁面大小200K(主要是商品圖片大小),那么需要的網(wǎng)絡(luò)和服務(wù)器帶寬是2G(200K×10,000),這些網(wǎng)絡(luò)帶寬是因?yàn)槊霘⒒顒?dòng)新增的,超過網(wǎng)站平時(shí)使用的帶寬。
直接下單
秒殺的游戲規(guī)則是到了秒殺時(shí)間才能開始對(duì)商品下單購買,在此時(shí)間點(diǎn)之前,只能瀏覽商品信息,不能下單。而下單頁面也是一個(gè)普通的URL,如果得到這個(gè)URL,不用等到秒殺開始就可以下單了。
2. 秒殺系統(tǒng)的應(yīng)對(duì)策略
為了應(yīng)對(duì)上述挑戰(zhàn),秒殺系統(tǒng)的策略有:
秒殺系統(tǒng)獨(dú)立部署
為了避免因?yàn)槊霘⒒顒?dòng)的高并發(fā)訪問而拖垮整個(gè)網(wǎng)站,使整個(gè)網(wǎng)站不必面對(duì)蜂擁而來的用戶訪問,將秒殺系統(tǒng)獨(dú)立部署,如果需要,還可以使用獨(dú)立的域名,以和網(wǎng)站完全隔離,即使秒殺系統(tǒng)崩潰了,也不會(huì)對(duì)網(wǎng)站造成任何影響。
秒殺商品頁面靜態(tài)化
秒殺商品頁面重新設(shè)計(jì),不使用網(wǎng)站原來的商品詳情頁面,頁面內(nèi)容靜態(tài)化:商品描述,商品參數(shù),成交記錄,用戶評(píng)價(jià)全部寫入一個(gè)靜態(tài)頁面,用戶請(qǐng)求不需要經(jīng)過應(yīng)用服務(wù)器的業(yè)務(wù)邏輯處理,也不需要訪問數(shù)據(jù)庫。所以秒殺商品服務(wù)不需要部署動(dòng)態(tài)的Web服務(wù)器、數(shù)據(jù)庫服務(wù)器。
租借秒殺活動(dòng)網(wǎng)絡(luò)帶寬
對(duì)于因?yàn)槊霘⑿略龅木W(wǎng)絡(luò)帶寬,必須和運(yùn)營商重新購買或者租借。為了減輕網(wǎng)站服務(wù)器的壓力,需要將秒殺商品頁面緩存在CDN,同樣需要和CDN服務(wù)商臨時(shí)租借新增的出口帶寬。
動(dòng)態(tài)生成隨機(jī)下單頁面URL
為了避免用戶直接訪問下單頁面URL,需要將該URL動(dòng)態(tài)化,即使秒殺系統(tǒng)的開發(fā)者也無法在秒殺開始前訪問下單頁面的URL。辦法是在下單頁面URL加入由服務(wù)器端生成的隨機(jī)數(shù)作為參數(shù),在秒殺開始的時(shí)候才能得到。
鏈接:https://www.zhihu.com/question/20496392/answer/17272255
來源:知乎
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
1. 秒殺活動(dòng)的技術(shù)挑戰(zhàn)
假設(shè)某網(wǎng)站秒殺活動(dòng)只推出一件商品,預(yù)計(jì)會(huì)吸引1萬人參加活動(dòng),也就說最大并發(fā)請(qǐng)求數(shù)是10000,秒殺系統(tǒng)需要面對(duì)的技術(shù)挑戰(zhàn)有:
對(duì)現(xiàn)有網(wǎng)站業(yè)務(wù)造成沖擊
秒殺活動(dòng)只是網(wǎng)站營銷的一個(gè)附加活動(dòng),這個(gè)活動(dòng)具有時(shí)間短,并發(fā)訪問量大的特點(diǎn),如果和網(wǎng)站原有應(yīng)用部署在一起,必然會(huì)對(duì)現(xiàn)有業(yè)務(wù)造成沖擊,稍有不慎可能導(dǎo)致整個(gè)網(wǎng)站癱瘓。
高并發(fā)下的應(yīng)用、數(shù)據(jù)庫負(fù)載
用戶在秒殺開始前,通過不停的刷新瀏覽器頁面以保證不會(huì)錯(cuò)過秒殺,這些請(qǐng)求如果按照一般的網(wǎng)站應(yīng)用架構(gòu),訪問應(yīng)用服務(wù)器、連接數(shù)據(jù)庫,會(huì)對(duì)應(yīng)用服務(wù)器、數(shù)據(jù)庫服務(wù)器造成極大的負(fù)載壓力。
突然增加的網(wǎng)絡(luò)及服務(wù)器帶寬
假設(shè)商品頁面大小200K(主要是商品圖片大小),那么需要的網(wǎng)絡(luò)和服務(wù)器帶寬是2G(200K×10,000),這些網(wǎng)絡(luò)帶寬是因?yàn)槊霘⒒顒?dòng)新增的,超過網(wǎng)站平時(shí)使用的帶寬。
直接下單
秒殺的游戲規(guī)則是到了秒殺時(shí)間才能開始對(duì)商品下單購買,在此時(shí)間點(diǎn)之前,只能瀏覽商品信息,不能下單。而下單頁面也是一個(gè)普通的URL,如果得到這個(gè)URL,不用等到秒殺開始就可以下單了。
2. 秒殺系統(tǒng)的應(yīng)對(duì)策略
為了應(yīng)對(duì)上述挑戰(zhàn),秒殺系統(tǒng)的策略有:
秒殺系統(tǒng)獨(dú)立部署
為了避免因?yàn)槊霘⒒顒?dòng)的高并發(fā)訪問而拖垮整個(gè)網(wǎng)站,使整個(gè)網(wǎng)站不必面對(duì)蜂擁而來的用戶訪問,將秒殺系統(tǒng)獨(dú)立部署,如果需要,還可以使用獨(dú)立的域名,以和網(wǎng)站完全隔離,即使秒殺系統(tǒng)崩潰了,也不會(huì)對(duì)網(wǎng)站造成任何影響。
秒殺商品頁面靜態(tài)化
秒殺商品頁面重新設(shè)計(jì),不使用網(wǎng)站原來的商品詳情頁面,頁面內(nèi)容靜態(tài)化:商品描述,商品參數(shù),成交記錄,用戶評(píng)價(jià)全部寫入一個(gè)靜態(tài)頁面,用戶請(qǐng)求不需要經(jīng)過應(yīng)用服務(wù)器的業(yè)務(wù)邏輯處理,也不需要訪問數(shù)據(jù)庫。所以秒殺商品服務(wù)不需要部署動(dòng)態(tài)的Web服務(wù)器、數(shù)據(jù)庫服務(wù)器。
租借秒殺活動(dòng)網(wǎng)絡(luò)帶寬
對(duì)于因?yàn)槊霘⑿略龅木W(wǎng)絡(luò)帶寬,必須和運(yùn)營商重新購買或者租借。為了減輕網(wǎng)站服務(wù)器的壓力,需要將秒殺商品頁面緩存在CDN,同樣需要和CDN服務(wù)商臨時(shí)租借新增的出口帶寬。
動(dòng)態(tài)生成隨機(jī)下單頁面URL
為了避免用戶直接訪問下單頁面URL,需要將該URL動(dòng)態(tài)化,即使秒殺系統(tǒng)的開發(fā)者也無法在秒殺開始前訪問下單頁面的URL。辦法是在下單頁面URL加入由服務(wù)器端生成的隨機(jī)數(shù)作為參數(shù),在秒殺開始的時(shí)候才能得到。
轉(zhuǎn)載于:https://www.cnblogs.com/java-ssl-xy/p/8459609.html
總結(jié)
- 上一篇: 基金买入净值按哪个时点算 主要看提交的
- 下一篇: 51Nod1556 计算