原创 分佈式系統中的CAP原理

分佈式系統中的CAP原理 簡介 在分佈式系統中,我們經常聽到CAP原理這個詞,它是什麼意思呢?其實和C、A、P這3個字母有關,C、A、P分別是這3個詞的首字母。下面我們就看一下這3個詞分別是什麼意思? C - Consistent ,一致

原创 搭建Elasticsearch集羣

前置操作 當克隆以後,es中的data目錄,一定要清空,這裏麪包含了原先的索引庫數據。 配置集羣 修改elasticsearch.yml這個配置文件如下: # 配置集羣名稱,保證每個節點的名稱相同,如此就能都處於一個集羣之內了 clus

原创 Logstatsh數據同步

Logstash Logstash是elastic技術棧中的一個技術。它是一個數據採集引擎,可以從數據庫採集數據到es中。我們可以通過設置自增id主鍵或者時間來控制數據的自動同步,這個id或者時間就是用於給logstash進行識別的 id

原创 枚舉分片

分片規則 auto-sharding-long   <table name="user" dataNode="dn101,dn102" rule="auto-sharding-long" /> rule.xml :根據Id分片小於500

原创 全局表-子表

全局表 如果數據量不大,就沒必要進行分庫,可以同步到所有的庫 <table name="province" dataNode="dn101,dn102" type="global"/> 子表 childTable標籤,定義分片子表 nam

原创 取模分片

修改規則  <table name="user" dataNode="dn101,dn102" rule="mod-long" /> 修改rule.xml 修改分片依賴的columns <tableRule name="mo

原创 VM15安裝Centos(靜態IP)以及Centos集羣

bilibili上一個Up主的視頻很詳細 一安裝Centos(靜態IP) https://www.bilibili.com/video/BV147411X71S?from=search&seid=1038251065063234054 二

原创 主從複製(讀寫分離)

  一·.架構(先全量複製後增量複製)磁盤化複製   二.通常模式   三.搭建(一個master,兩個slave:只能讀不能寫)   1.進入從節點的redis.conf文件配置,添加master的IP 2.添加密碼   3.

原创 分佈式鎖實現方案優缺點分析

分佈式鎖實現方案優缺點分析 項目修改 : 項目中用的是數據庫分佈式鎖,但會造成大量數據堆積在數據庫update這裏,將壓力分給業務層。 <update id="decreaseItemSpecStock"> upd

原创 基於數據庫實現分佈式鎖

 實現原理 多個進程、多個線程訪問共同組件數據庫. 通過selec.....for update訪問同一條數據 for update鎖定數據,其他線程只能等待 實現步驟  此時只有一個操作可以對數據進行修改,而其他人不能夠對該數據進行修改

原创 Rabbit可靠性消息投遞

目錄 一.從架構角度分析消息可靠性投遞 二. 一.從架構角度分析消息可靠性投遞 將數據插入到業務表中,同時將日誌存入到MSGDB中(包含一個狀態,初始值爲0),二者保證原子性。併發量大的時候, 業務層將消息投遞給MQ Broker Bro

原创 Redis緩存過期機制

一.過期Key兩種方案 定期刪除:eg每十秒進行定期刪除,消耗CPU 惰性刪除:請求時發現過期刪除,內存會被一直佔用 二.內存被Redis緩存佔用滿了怎麼辦? 內存佔滿了,可以使用硬盤,來保存,但是沒意義,因爲硬盤沒有內存快,會影響red

原创 ConcurrentModificationException錯誤

一.問題:如果不加break會報ConcurrentModificationException異常 1.第一種方法加break List<ShopcartBO> shopcartList = JsonUtils.jsonToList

原创 DSL搜索

目錄   請求參數的查詢(QueryString) DSL基本語法 1.分頁 2.term精確搜索與match分詞搜索  4.terms 多個詞語匹配檢索 5.match_phrase 短語匹配  6.match(operator)/id

原创 無磁盤化複製

一.架構:磁盤很慢,網絡很好可以代替磁盤化複製   image.png     二.操作change yes