1. 程式人生 > >Java秒殺系統方案優化 高性能高並發實戰

Java秒殺系統方案優化 高性能高並發實戰

www. 數據庫 存儲 redis服務器 live 框架搭建 入門 服務 dea

第1章 課程介紹(講師參與學習討論)
本章將為大家介紹課程目標,課程技術棧,課程收獲,以及課程安排,讓大家更好的了解這門課程具體能幫助大家學習到哪些內容,能有哪些提高,希望本課程能很好的幫助大家學習知識,提高解決問題的能力。
1-1 課程導學

第2章 項目開發環境與框架搭建
本章將帶大家基於Maven的Spring-Boot工程框架進行項目框架搭建, 並集成Thymeleaf服務端頁面模板,集成Mybatis和Druid連接池訪問數據庫, 並在Linux下源碼安裝Redis服務器以及集成Redis客戶端Jedis等等,為後續的內容做好準備工作
2-1 項目環境搭建(eclipse)
2-2 項目環境搭建(idea)
2-3 集成mybatis
2-4 集成mybatis與druid
2-5 linux下源碼安裝redis
2-6 集成redis上
2-7 集成redis中
2-8 集成redis下

第3章 實現用戶登錄以及分布式session功能
本章將帶大家實現用戶登錄功能,為了數據傳輸和存儲的安全性,實現密碼兩次MD5入庫,利用Redis實現分布式Session。一則熟悉SpringBoot開發模式和該選型下的技術銜接,二則為後面的秒殺功能提供必備的用戶信息。
3-1 明文密碼兩次md5入庫
3-2 登錄功能實現上
3-3 登錄功能實現下
3-4 集成Jsr303參數校驗框架
3-5 系統通用異常處理
3-6 分布式session上
3-7 分布式session下

第4章 秒殺功能開發及管理後臺
本章將實現秒殺的交互設計和秒殺功能的前端和後臺,隨著後期優化策略的講解,秒殺前後端功能也要進行相應改造(我們會通過演進的方式一步一步的進行優化)。
4-1 商品列表頁
4-2 商品詳情頁上
4-3 商品詳情頁下
4-4 秒殺功能實現
4-5 訂單詳情頁

第5章 秒殺壓測-Jmeter壓力測試
本章會教大家學會用壓力測試對功能進行測試。首先我們會介紹一款神器-JMeter,並教大家學會如何用命令行壓力測試,如何自定義變量模擬多個用戶並發請求,然後對第三章的接口做壓測,記錄QPS,並根據壓測結果分析系統由於並發帶來的問題和系統的瓶頸點,“發現賣超”這種情況。...
5-1 jmeter快速入門
5-2 自定義變量模擬多用戶
5-3 命令行壓測上
5-4 命令行壓測下

第6章 頁面級高並發秒殺優化(Redis緩存+靜態化分離)
本章將使用不同層級和粒度的緩存對系統做優化改造,比如:對服務端手動渲染商品列表做頁面緩存,對商品詳情靜態化來利用客戶端瀏覽器的緩存,對熱點數據做對象級的緩存,此外Nginx接入層可以加緩存、還可以使用CDN緩存等等。改造以後會再次做壓測,與之前的QPS做對比,本章還會講解如何解決上一章中的“超賣”問題。...
6-1 商品列表頁頁面緩存實現
6-2 熱點數據對象緩存上
6-3 熱點數據對象緩存下
6-4 商品詳情靜態化
6-5 秒殺接口前後端分離
6-6 訂單詳情靜態化,解決賣超問題
6-7 靜態資源優化

第7章 服務級高並發秒殺優化(RabbitMQ+接口優化)
本章將通過預減庫存減少透穿到DB的請求,通過異步處理和排隊機制緩解數據庫的壓力,降低應用接口負載,主要包括RabbitMQ安裝和配置,四種交換機模式介紹,Redis做庫存預判,消息隊列異步寫庫,秒殺接口優化。JMeter再次做壓測,並跟之前的效果做對比。...
7-1 接口優化的思路概述
7-2 linux下源碼安裝rabbitmq
7-3 集成rabbitmq上
7-4 集成rabbitmq下-4種交換機模式
7-5 redis預減庫存,rabbitmq異步下單
7-6 使用本地標識減少redis請求
7-7 壓力測試對比

第8章 圖形驗證碼及惡意防刷
本章將教大家學會如何隱藏秒殺地址,實現圖形驗證碼,接口限流防刷,列表頁和詳情頁防刷,秒殺操作防刷,驗證碼防刷等。最後也會介紹一些防止爬蟲或者秒殺神器的常用方案。
8-1 隱藏秒殺地址
8-2 圖形驗證碼上
8-3 圖形驗證碼下
8-4 接口限流防刷上
8-5 接口限流防刷下

第9章 Tomcat服務端優化(Tomcat/Ngnix/LVS/Keepalived)
本章將帶大家進行線上部署相關技術的學習,包括Tomcat配置優化以及使用APR連接器提高並發性能,以及用Ngnix如何配置並發連接數、長連接、壓縮、緩存、狀態監控以及請求統計,如何配置LVS四層負載均衡,最後用四臺虛擬機搭建一個基於Keepalived的四層負載均衡和高可用環境。...
9-1 tomcat配置優化
9-2 tomcat使用apr連接器
9-3 nginx配置並發、長連接、壓縮、狀態監控
9-4 nginx配置緩存、請求統計
9-5 LVS四層負載均衡
9-6 keepalive負載均衡與高可用

第10章 課程總結及重難點回顧
首先恭喜大家已經學習到課程的最後一章,相信大家也有了自己的收獲和感悟,最後如果有學習問題,可以發到課程問答區或者QQ交流群,我在那裏等著大家!
10-1 課程總結及重難點回顧

下載地址:百度網盤下載

Java秒殺系統方案優化 高性能高並發實戰