原创 秒殺系統 頁面優化技術 商品詳情頁面靜態化(前後端分離)

頁面靜態化+前後端分離 常用技術AngularJS、Vue.js 優點:利用瀏覽器的緩存 上面的方法比較複雜,我們只是用jQuery來模擬實現頁面靜態化 將頁面直接緩存到用戶的瀏覽器上面,好處:用戶訪問數據的時候,不用去請

原创 秒殺系統 JSR303 全局異常處理

JSR303參數校驗 https://blog.csdn.net/u014029255/article/details/55518598 爲什麼選擇jsr303 參數校驗是我們程序開發中必不可少的過程。用戶在前端頁面上填寫表單

原创 秒殺系統 商品列表頁的設計

數據庫商品爲什麼要分商品表和秒殺商品表? 假設商品和秒殺商品都在一張表中,秒殺活動經常以不同的形式展開,數據庫字段也要經常改啊,那和數據庫有關的老代碼是不是也要一起改,當數據庫不斷修改,後期維護也比較困難。 前端goods_lis

原创 秒殺系統 頁面優化技術 頁面緩存+URL緩存+對象緩存

頁面優化技術 不僅僅是秒殺業務場景,更是通用的優化手段 頁面緩存+URL緩存+對象緩存 由於併發瓶頸在數據庫,想辦法如何減少對數據庫的訪問,所以加若干緩存來提高,通過各種粒度的緩存,最大粒度頁面緩存到最小粒度的對象級緩存。

原创 秒殺系統 通用緩存Key

爲什麼要實現通用緩存Key? 先來看看不加前綴的情況,可以試想,項目必然不是同一人開發,那麼key的命名必然可能出現相同的情況。 public <T> boolean set(String key,T value){ Jedis

原创 秒殺系統 秒殺功能實現

假設當前時間是2020-05-07 16:21:34 已經開始 秒殺結束 秒殺倒計時 所以我們去秒殺第一個商品: 在之前的goods_detail.html裏面的秒殺按鈕點擊之後提交/miaosha/do_miaosha,以P

原创 秒殺系統 高併發秒殺系統接口優化 RabbitMQ異步下單

問題: 針對秒殺的業務場景,在大併發下,僅僅依靠頁面緩存、對象緩存或者頁面靜態化等還是遠遠不夠。數據庫壓力還是很大,所以需要異步下單,如果業務執行時間比較長,那麼異步是最好的解決辦法,但會帶來一些額外的程序上的複雜性。 思路:

原创 秒殺系統 數據庫設計 對應的domain對象

因爲本秒殺系統業務邏輯簡單,數據庫設計也比較簡單 數據庫設計 商品表,秒殺商品表,訂單表,秒殺訂單,用戶表 爲什麼特意添加秒殺商品表和秒殺訂單,原因還是我之前說的,一定要考慮之後的情況,維護性,如果將不特意創建秒殺商品

原创 秒殺系統 安裝與集成Redis

Redis簡介 redis是一個key-value存儲系統。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set --有序集

原创 學習Java單例模式,小白看這篇就夠了!

每天學一點,每天進步一點,質的飛躍需要量的積累,add oil!!! 文章目錄常見應用場景爲什麼要學單例模式?常見的五種單例模式實現方式餓漢式懶漢式雙重檢測鎖式靜態內部類式枚舉單例如何選用最適合的方法? 首先我們學任何一項技

原创 多線程學習,看這一篇就夠了

多線程作爲面試必問點,必須系統的深入學習才能經受住面試官的拷打。 筆者認爲不管學什麼,都是先要有個整體的認知,再逐步的分解學習,以達到化難爲簡的目的。下表是我們接下來要學習的技能點, *** 最重要,先整體瞭解,之後再逐步學習

原创 如何快速提高博客排名?CSDN排名如何突破

原爲:https://blog.csdn.net/qq_29073921/article/details/84517982 今天試試這位大佬的方法,發了6片水文,有一篇沒有通過,理由無意義,我笑了

原创 Git 筆記 - 程序員都要掌握的 Git

尊重原創,傳送門:https://juejin.im/post/5d157bf3f265da1bcc1954e6 題外話:最近小白在學git,在csdn搜索了git,查看了不少博客,雖然這些瀏覽量都不錯,但是我依然沒有找到我想要

原创 JAVA面試覆盤5

待寫

原创 JAVA面試覆盤1

待寫