【本系列的文章來自慕課網(wǎng)的視頻學(xué)習(xí)筆記】
??????? 剛剛過了雙十一,在激動刺激的秒殺活動中你是否秒殺到你所心愛的東西抑或是鎩羽而歸呢?但是作為強(qiáng)大的程序員的你有沒有考慮過秒殺活動的原理,抑或是手癢癢自己寫一個秒殺系統(tǒng)呢【小型迷你版】?從今天開始,我利用自己拙劣的知識來帶你寫一個迷你版秒殺系統(tǒng),今天先介紹一下整體架構(gòu)!
通過這個系列你可以學(xué)到什么
1.SpringMVC+Spring+Mybatis整合與使用
2.秒殺類系統(tǒng)需求理解和實(shí)現(xiàn)
3.常用技術(shù)解決高并發(fā)問題
為什么使用SSM框架
1.大多數(shù)互聯(lián)網(wǎng)公司在使用的框架:阿里巴巴、京東、美團(tuán)等
2.SSM框架易于使用和輕量級
3.低代碼侵入性
4.擁有成熟的社區(qū)和用戶群
這個系列所用到的技術(shù)
1.MySQL
a.表設(shè)計
b.SQL技巧
c.事務(wù)和行級鎖
2.MyBatis
a.DAO層設(shè)計與開發(fā)
b.MyBatis合理使用
c.MyBatis與Spring整合
3.SpringMVC
a.Restful接口設(shè)計和使用
b.框架運(yùn)作流程
c.Controller開發(fā)技巧
4.前端
a.交互設(shè)計
b.BootStrap
c.jQuery
5.高并發(fā)
a.高并發(fā)點(diǎn)和高并發(fā)分析
b.優(yōu)化思路并實(shí)現(xiàn)
秒殺系統(tǒng)業(yè)務(wù)流程
從上圖可以看出,秒殺業(yè)務(wù)的核心就是庫存,不管是用戶還是商家,最終操作的都是庫存,所以對庫存的操作,所以說用戶對庫存的操作就是
那么什么是用戶的購買行為呢,就是要記錄用戶的購買成功的信息包括誰購買成功了,成功購買的時間和有效期以及付款和發(fā)貨信息。
事務(wù)機(jī)制
秒殺系統(tǒng)的難點(diǎn)就是多個人搶購一種商品,所以保證這種行為最可靠的方式就是事務(wù),而完整的事務(wù)包括開始事務(wù)、更新庫存數(shù)量、插入購買記錄和提交事務(wù)
最后奉上一張?zhí)熵埖拿霘⑾到y(tǒng)架構(gòu)圖