-
【為什么要單獨(dú)獲取系統(tǒng)時(shí)間?】
靜態(tài)資源會(huì)部署到CDN上,訪問detail頁,靜態(tài)資源等不需要訪問秒殺系統(tǒng),因此要單獨(dú)做一個(gè)請(qǐng)求獲取系統(tǒng)時(shí)間。
【CDN的理解】
大部分的視頻加速完全依賴于CDN
查看全部 -
【流程圖】
紅色表示可能會(huì)出現(xiàn)高并發(fā)的點(diǎn),綠色表示無影響。
【詳情頁】可通過CDN優(yōu)化。
大部分的視頻加速完全依賴于CDN
?為什么要單獨(dú)獲取系統(tǒng)時(shí)間?靜態(tài)資源會(huì)部署到CDN上,訪問detail頁,靜態(tài)資源等不需要訪問秒殺系統(tǒng),因此要單獨(dú)做一個(gè)請(qǐng)求獲取系統(tǒng)時(shí)間。
【獲取系統(tǒng)時(shí)間不用優(yōu)化,因?yàn)楹芸?/strong>】
【秒殺地址暴露接口分析】
無法使用CDN緩存,(因?yàn)槊霘⒌刂肥菚?huì)變化的)
適合服務(wù)器端緩存:redis等
一致性維護(hù)成本低:超時(shí)穿透/主動(dòng)更新
【秒殺操作接口優(yōu)化分析】優(yōu)化方式,減少事務(wù)鎖時(shí)間。
無法使用CDN緩存,
后端緩存困難:庫存更新一致性問題
一行數(shù)據(jù)競(jìng)爭(zhēng):熱點(diǎn)商品
查看全部 -
這一章講的不錯(cuò)
查看全部 -
大型系統(tǒng)架構(gòu)
查看全部 -
CDN:Content Delivery Network,即內(nèi)容分發(fā)網(wǎng)絡(luò)
WebServer一般不直接對(duì)外訪問,之前都會(huì)放置Nginx,Nginx是一個(gè)集群化的,部署在多個(gè)服務(wù)器上,用來做我們的Http服務(wù)器。同時(shí)他還會(huì)把后端的Tomcat,Jetty來做反向代理。
Redis:做服務(wù)器端的緩存,利用Redis提供的API來達(dá)到熱點(diǎn)數(shù)據(jù)的快速存取的過程。
MySql:借助MySQL事務(wù)來達(dá)到秒殺事務(wù)的一致性和完整性
查看全部 -
秒殺操作的簡單優(yōu)化:更新庫存的是熱點(diǎn)操作,會(huì)出現(xiàn)行級(jí)鎖,而插入購買記錄的行為沒有行級(jí)鎖??梢韵炔迦胭徺I明細(xì),可以避免因重復(fù)秒殺帶來的不必要的更新庫存操作,減少不必要的行級(jí)鎖的占用。然后再去更新庫存。這樣,行級(jí)鎖的占用時(shí)間可以節(jié)省一半(反正是節(jié)省了)
查看全部 -
rowLock:? 行級(jí)鎖,鎖的粒度最小,并發(fā)度最高,加鎖慢
查看全部 -
秒殺優(yōu)化總結(jié)
查看全部 -
如何放到MySQL服務(wù)端
查看全部 -
如何判斷Update更新庫存成功?
查看全部 -
異地機(jī)房網(wǎng)絡(luò)延遲計(jì)算
查看全部 -
mysql 單條update qps 每秒40000+
Java 控制事務(wù)行為分析
數(shù)據(jù)庫鎖/網(wǎng)絡(luò)延時(shí)/GC
行級(jí)鎖在Commit之后釋放 --如何減少行級(jí)鎖的持有時(shí)間
優(yōu)化思路:
把客戶端邏輯放到Mysql服務(wù)端 避免網(wǎng)絡(luò)延遲和GC影響
----使用存儲(chǔ)過程
******** 優(yōu)化總結(jié) ********
前端控制:暴露接口 按鈕防重復(fù)
動(dòng)靜態(tài)分離:CDN緩存,后端緩存
事務(wù)競(jìng)爭(zhēng)優(yōu)化:減少事務(wù)鎖時(shí)間
查看全部 -
java控制事務(wù)行為分析——串行操作
查看全部 -
架構(gòu)成本分析
查看全部 -
其他秒殺方案分析
查看全部
舉報(bào)