原创 redis的機制(2)

redis持久化機制          redis的數據都存放在內存中,如果沒有配置持久化機制,重啓之後就會全丟失了。需要開啓持久化機制,將數據保存到磁盤上,當redis重啓後,可以從磁盤上恢復。     兩種持久化方式RDB和AOF R

原创 redis 主從集羣

主從複製 主從複製解決什麼問題:  redis-server單點故障   單節點QPS有限   持久化,從處理持久化,避免對主性能影響 主從複製應用場景分析  讀寫分離場景,規避redis單機瓶頸  故障切換,master出問題後還有s

原创 lucene 介紹(1)

由於之前項目中用到了全文檢索的,總結下lucene的大概功能,也能幫助其它童鞋更好的學習。 Lucene簡介   最受歡迎的java開源全文搜索引擎開發工具包。提供了完整的查詢引擎和索引引擎,部分文本分詞引擎(英文與德文兩種西方語言)。L

原创 Lucene-索引詳解(3)

IndexWriter詳解   創建API詳解圖示   代碼示例 import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.core.S

原创 lucene 搜索詳解(4)

搜索流程   搜索代碼示例 package com.dongsheng.lucene.dslucene.lucene; import org.apache.lucene.analysis.Analyzer; import org.a

原创 HashMap put如何存儲元素的?

1.HashMap主要成員屬性 /** * The default initial capacity - MUST be a power of two. 默認的初始化容量 2的冪等次方 */ st

原创 Redis 和 Memcached 的區別詳解

Redis的作者Salvatore Sanfilippo曾經對這兩種基於內存的數據存儲系統進行過比較: Redis支持服務器端的數據操作:Redis相比Memcached來說,擁有更多的數據結構和並支持更豐富的數據操作,通常在Memcac

原创 只有1G內存,如何對10G的文件中數據進行排序

  思考      1.歸併、外排 2.多線程  RecursiveTask 測試生成文件代碼 /*** *@author dongsheng *@date 2019/1/18 22:58 *@Description: *@ve

原创 Redis數據備份和重啓恢復

一、對Redis持久化的探討與理解 目前Redis持久化的方式有兩種: RDB 和 AOF 首先,我們應該明確持久化的數據有什麼用,答案是用於重啓後的數據恢復。 Redis是一個內存數據庫,無論是RDB還是AOF,都只是其保證數據恢復的措

原创 分佈式事務(柔性事務)

  由於系統應用業務涉及到分佈式事務問題,所以採用了柔性分佈式事務,最終保證業務數據的一致性。   設計思路圖:           demo代碼地址:https://gitee.com/wywh/wywhdgg-mq  

原创 MySQL優化筆記整理

  之前看了一段時間關於MySQL優化方面的資料,雖然不是專業的DBA,但這些足以在日常工作中能夠快速解決sql優化的問題。不過,發現無論什麼時候,都缺少不了數據結構的出現。 1.慢查詢日誌            每個公司都會有自己的日誌

原创 Java GC調優(上)

簡介  圖1     Java-HotSpot是什麼? 虛擬機(JVM)版本是25.4-b25 java -version出來信息包含兩部分: Java軟件包發行版本信息和內核(JVM)版本信息。 java的發行包包含三種類型Java

原创 Netty Reactor 線程模型(隨記)

       Netty被稱爲一個高性能、高可擴展性能的異步事件驅動的網絡應用程序框架,它極大地簡化了TCP和UDP客戶端和服務器開發等網絡編程。        Netty的Reactor模型中有四個核心概念:  Resources資源(

原创 Redis 分佈式鎖

最近項目又用到分佈式鎖,下面把自己寫的redis分佈式鎖代碼貢獻出來。 public class RedisManager { private static final String SET_IF_NOT_EXIST = "N

原创 一次MySQL千萬級大表優化過程

概述 使用阿里雲rds for MySQL數據庫(就是MySQL5.6版本),有個用戶上網記錄表6個月的數據量近2000萬,保留最近一年的數據量達到4000萬,查詢速度極慢,日常卡死,嚴重影響業務。老系統,當時設計系統的人大概是大學沒畢