原创 31. 【實戰】緩存數據生產服務的工作流程分析以及項目搭建

目錄緩存數據生產服務緩存框架搭建spring boot整合ehcache 多級緩存架構,從底往上做,先做緩存數據的生產這一塊。 緩存數據生產服務 簡單介紹一下整個緩存數據生產服務的一個工作流程。 商品詳情頁緩存數據生產服務的工作

原创 19. 【實戰】測試redis cluster多master寫入、讀寫分離、高可用性

目錄介紹測試redis cluster測試多master寫入 -> 支撐海量數據的分佈式存儲測試不同master各自的slave讀取 -> 讀寫分離測試主備自動故障切換 -> 高可用性思想redis cluster去掉主從架構,讀

原创 29. 【實戰】庫存服務代碼調試以及打印日誌觀察服務的運行流程

目錄日誌代碼測試流程 緊接着上一篇27.【實戰】在庫存服務中實現緩存與數據庫雙寫一致性保障方案的業務代碼,打印普通測試日誌,觀察功能是否實現。 日誌代碼 項目地址:my-eshop-inventory,切換到該分支,進行調試測試

原创 18. 【實戰】重新搭建一套讀寫分離+高可用+多master的redis cluster集羣

目錄搭建redis-cluster停止之前redis進程重要配置三臺機器啓動6個redis實例生產環境啓動腳本分別在3臺機器上,啓動6個redis實例創建集羣總結 redis cluster: 自動實現master+slave複製

原创 10. 【實戰】部署redis的讀寫分離主從架構

目錄搭建步驟啓用複製,部署slave node強制讀寫分離集羣安全認證讀寫分離架構的測試 搭建步驟 一主一從,往主節點去寫,在從節點去讀,可以讀到,主從架構就搭建成功了,包含節點間認證口令 啓用複製,部署slave node

原创 22. redis在實踐中的一些常見問題以及優化思路(包含linux內核參數優化)

目錄fork耗時導致高併發請求延時現象優化思路AOF的阻塞問題優化思路主從複製延遲問題主從複製風暴問題linux -- vm.overcommit_memoryswapiness最大打開文件句柄tcp backlog 可以用公司

原创 26. 高併發場景下的緩存+數據庫雙寫不一致問題

目錄高實時性服務緩存+數據庫雙寫不一致最初級【刪除緩存失敗】複雜【數據庫更新未完成】起因解決:串行化串行化方案注意問題讀請求長時阻塞讀請求併發量過高多服務實例部署的請求路由熱點路由問題 高實時性服務 實時性比較高的數據緩存 –

原创 45. hystrix高可用系統架構介紹

目錄前言hystrix高可用框架如何學習hystrix功能分佈式依賴服務Hystrix的設計原則Hystrix要解決的問題Hystrix如何實現Hystrix資源隔離 前言 之前的章節專注在高併發這一塊,緩存架構,承載高併發,在各

原创 25. Cache Aside Pattern緩存+數據庫讀寫模式

目錄Cache Aside Pattern刪除緩存,而不是更新緩存28法則 最經典的緩存+數據庫讀寫的模式:cache aside pattern Cache Aside Pattern 讀的時候,先讀緩存,緩存沒有的話,那

原创 1. Java基礎重點複習指南

目錄1. Java 對象初始化詳細過程1.1 Demo1Demo2 整理記錄方便查看 1. Java 對象初始化詳細過程 1.1 Demo1 Java 對象初始化詳細過程 //父類Animal class Animal {

原创 40. 【實戰】緩存數據生產服務zk分佈式鎖解決方案的代碼實現

通過zookeeper java client api去封裝連接zk,以及獲取分佈式鎖,還有釋放分佈式鎖的代碼。 zk分佈式鎖原理 通過去創建zk的一個臨時node,來模擬給摸一個商品id加鎖 zk保證只會創建一個臨時nod

原创 36. 【實戰】基於OpenResty部署應用層nginx以及nginx+lua簡單測試

目錄OpenResty:nginx+lua部署第一個nginx,作爲應用層部署openrestynginx+lua開發的hello world工程化nginx+lua項目結構 OpenResty:nginx+lua 因爲需要自定

原创 35. 基於【分發層+應用層】雙層nginx架構提升緩存命中率方案分析

目錄緩存命中率低如何提升緩存命中率 緩存命中率低 上篇文章中緩存數據生產服務相當於三層緩存架構中的本地堆緩存ehcache+redis分佈式緩存都搞定了 就要來做三級緩存中的nginx層緩存了。 如果一般來說,默認會部署多個ng

原创 24. 億級流量商品詳情頁的多級緩存架構以及架構中每一層的意義

目錄三級緩存多級緩存架構中每一層的意義nginx本地緩存redis分佈式大規模緩存tomcat jvm堆內存緩存 商品詳情頁系統,緩存架構,90%大量的業務代碼(沒有什麼技術含量),10%的最優技術含量的就是架構,上億流量,每秒

原创 32. Redis的LRU緩存清除算法講解以及相關配置

目錄reids清除原因LRU算法概述常用設置緩存清理流程redis的LRU近似算法 reids清除原因 多級緩存架構,緩存數據生產服務,監聽各個數據源服務的數據變更的消息,得到消息之後,然後調用接口拉去數據。 將拉取到的數據,寫