原创 redis_集羣原理 原

數據分佈 數據分佈理論 分佈式系統數據分區規則:常見的有哈希分區和順序分區兩種。 哈希分區 常見的hash分區規則有:節點取餘分區,一致性hash分區,虛擬槽分區. redis數據分區 redis集羣功能限制 1. key批量操作支持

原创 LinkedHashMap源碼解析 原

前言 HashMap中的元素時無序的,也就是說遍歷HashMap的時候,順序和放入的順序是不一樣的。 如果需要有序的Map,就可以採用LinkedHashMap. LinkedHashMap通過維護一個包含所有元素的雙向鏈表,保證了元素迭代

原创 redis-哨兵模式 原

前言 redis的主從複製模式,一旦master宕機,需要人工將slave升級爲master,還得通知client端更新master地址。 redis從2.8開始提供了sentinel(哨兵)模式來實現自動故障轉移。 sentinel模式

原创 spring_事務管理 原

事務的併發問題 事務的併發問題含義產生原因 髒讀一個事務讀取到另一個事務未提交的數據另一個事務執行了操作,但還未提交 不可重複讀一個事務因讀取到另一個事務已提交的數據。導致對同一條記錄讀取兩次以上的結果不一致另一個事務發生updat

原创 緩存與數據庫的雙寫一致性問題 原

數據庫與緩存的雙寫一致性問題 cache aside pattern 數據庫與緩存的雙寫一致性 爲什麼是先刪除緩存再更新數據庫,而不是反過來 併發讀寫下的一致性問題 總結: 讀請求和寫請求串行化,串到一個內存隊列裏去,這樣就可以保證

原创 docker搭建elk環境 原

官方參考文檔: https://www.elastic.co/guide/en/elastic-stack/current/installing-elastic-stack.html https://www.elastic.co/guide

原创 SpringCloud_消息驅動stream 原

stream解決了什麼問題 舉例 pom依賴: <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-sta

原创 storm架構與核心概念 原

storm邏輯架構 storm 拓撲結構

原创 mysql_事務隔離機制 原

事務隔離機制 事務就是要保證一組數據庫操作,要麼全部成功,要麼全部失敗。 在mysql中,事務支持是在引擎層實現的。 mysql是一個支持多引擎的系統,但並不是所有引擎都支持事務,比如mysql原生的MyISAM就不支持事務。這也是MyI

原创 java_SPI機制 原

簡介 SPI(Service Provider Interface)服務提供接口,是指的一種服務發現機制,爲某個特定的接口尋找服務的實現。在大規模的軟件開發中經常採用這樣的機制,實現模塊之間基於接口編程,隱藏其實現細節,不同的服務提供商進行

原创 分佈式鎖的實現 原

redis實現分佈式鎖 方法1:普通實現方案 實現方式: 使用指令: set key 隨機值 ex 5 nx.意思是當key不存在的時候設置key. 如果key存在返回OK,否則返回nil. 實現過程: 1.執行命令set key true

原创 redis-持久化 原

RDB rdb持久化是把當前進程數據生成快照保存到磁盤的過程。觸發RDB持久化過程分爲手動觸發和自動觸發。 觸發機制 bgsave執行流程 rdb優缺點 AOF 記錄每次寫命令,重啓時再重新執行aof文件中的命令達到恢復數據的目的

原创 工作中如何做好技術積累 轉

參考:https://tech.meituan.com/study_vs_work.html 看了這篇文章,覺得總結得非常好,因此摘抄了一些關鍵點,以便自己經常翻閱。 引言 在繁忙的工作中做好技術積累,構建個人核心競爭力. 在繁忙的工作中,

原创 mysql_一條查詢語句的執行流程 原

mysql的邏輯架構 一條查詢語句的執行流程 select * from T where ID=10; 連接器 在完成經典的 TCP 握手後,連接器就要開始認證你的身份,這個時候用的就是你輸入的用戶名和密碼。如果用戶名密碼認證通過,