說秒殺系統其實更多的高級一點的知識,不會太多的在業務上說明秒殺,那樣確實太浪費時間,主要核心的點,如何處理高并發系統調優,壓測。發現性能的瓶頸更好的調優。還會說說高階的優化。主要分享給大家針對互聯網分布式的高并發項目怎么去調優,快速定位,快速解決。主要說思路,明白了思路,如何去快速定位,快速解決。常用的調優方案。
秒殺系統介紹
其實大家都經常在網上購物的,秒殺應該都知道套路吧。
- 所謂“秒殺”,就是網絡賣家發布一些超低價格的商品,所有買家在同一時間網上搶購的一種銷售方式。
- 特點-低價,少量庫存,瘋搶。
吸引大家來搶購,也不至于自己虧的太多。博眼球。
- 高并發,大流量。
念得出名字的互聯網公司基本都是高并發,大流量。
- 雙十一秒殺系統實現介紹。
1.通過原有的下單增加三個變量完成,是否秒殺,開始時間,結束時間。
2.是否秒殺,是為了商品的展示。如果是秒殺商品的特殊判斷。
3.進入頁面之前先進入controller獲取一個當前的后臺時間傳遞到前臺,方便讀秒。
4.前端js判斷時間到達后進行下單,下單時傳遞時間跟后端時間進行對比,防止被高手修改時間強行下單。
5.對于庫存是通過下單的時間來判斷的,必須按照秒殺開始后的時間來進行判斷,每次下單庫存都需要進行判斷,防止超賣。 sql上邊的判斷:
update t_product set 庫存=庫存-1 and 商品id=\”ID號\” and 庫存>0;數據庫防止絕對超賣。
6.忘了說了,必須判斷登錄,防止某個賬號惡意刷接口。
- 壓測
我磚都搬完了,自己點點沒問題了,還壓測個毛線啊,壓測都是測試人員的事情,我開發任務都堆成山了。
1.老鐵啊,老鐵,壓測其實很有必要,jmeter分分鐘就壓測了接口。
2.壓測可以讓自己不被坑,壓測還可以發現bug。
3.壓測可以讓你的代碼更健壯。
4.壓測可以找到業務和功能的bug。如果測試出來你的bug,可能罰錢,影響錢的問題。
- 了解幾個技術點
- 1.tps。t代表英文的事務。
- 2.qps。q代表查詢。
- QPS
Queries Per Second意思是“每秒查詢率”,是一臺服務器每秒能夠相應的查詢次數,是對一個特定的查詢服務器在規定時間內所處理流量多少的衡量標準。
- TPS
TransactionsPerSecond的縮寫,也就是事務數/秒。它是軟件測試結果的測量單位。一個事務是指一個客戶機向服務器發送請求然后服務器做出反應的過程。客戶機在發送請求時開始計時,收到服務器響應后結束計時,以此來計算使用的時間和完成的事務個數。
PS:熟悉秒殺的原理,秒殺的開發思路,最好會用jmeter可以自己做做簡單的壓測。
版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。