原创 二、搜索引擎篇-搭建es環境

一、添加es用戶: [root@javaxiaobang ~]# useradd es [root@javaxiaobang ~]# passwd es 二、修改centos配置: 1、 [root@javaxiaobang ~]#

原创 三、搜索引擎篇-lucene入門代碼示例

一、lucene是什麼? 最受歡迎的java開源全文搜索引擎開發工具包。 提供了完整的查詢引擎和索引引擎, 部分文本分詞引擎。 lucene的目的是爲軟件開發人員提供一個簡單易用的工具包, 以方便在目標系統中實現全文檢索功能, 或者是以此

原创 一、搜索引擎篇-揭開es神祕的面紗

一、爲什麼需要搜索引擎? 數據庫適合結構化數據的精確查詢,而不適合半結構化、 非結構化數據的模糊查詢及靈活搜索(特別是數據量大時),無法提供想要的實時性。 結構化數據:用表、字段表示的數據 半結構化數據: xml、html 非結構化數據:

原创 kafka生產者和消費者(三)

一、消息的序號 每個分片會給每條消息分配一個遞增的序號 二、消費者的offset(偏移量) 三、消費某個時間開始的消息? 建立時間索引.timeindex文件  數據結構(時間戳,序號) 1、通過分片和時間,獲取到該分片最小的起始號(K

原创 kafka安裝(一)

一、下載地址: 鏈接: https://pan.baidu.com/s/18vp_qCGZgZNjtaewOCc3Uw   密碼:54jh 二、啓動zookeeper: [root@javaxiaobang kafka]# bin/zo

原创 Netty複習-Reactor線程模型(三)

一、核心概念: 1、請求 2、事件複用器 3、事件分配器 4、事件處理器 二、Reactor的幾種模式 1、Reactor單線程模式 一個人包攬所有:接收新鏈接、分離套接字、分配請求到事件處理器 2、Reactor多線程模式 一個人包

原创 Netty複習-IO多路複用機制(select、poll、epoll)(二)

一、select特點 支持水平觸發 一個線程可以同時處理多個Socket請求 最大連接數有限制(32位系統1024,64位系統2048) 每次調用select,輪詢所有Socket(活躍的Socket和非活躍的Socket)找到相應的數據

原创 ZAB協議(Zookeeper atomic Broadcast)

一、簡語: ZAB協議是Paxos算法的經典實現 二、ZAB協議的兩種模式: 1.崩潰恢復: 1.每個server都有一張選票(myid,zxid),選票投給自己 2.收集所有server的投票 3.比較投票(邏輯:優先比較zxid,選出

原创 mysql之重要命令(三)

一、引言 人腦記錄的知識,往往會遺忘,還是記錄到博客放心點 二、命令 -- 查看版本 show variables like '%version%'; -- 支持哪些存儲引擎 show engines; -- 默認存儲引擎 show v

原创 mysql之explain(一)

一、引言 最近訂閱了極客時間mysql的專欄,感覺講的還不錯,在此之前也看過一些mysql的知識,但是不太系統,故而經常性的用過即忘,趁着對這塊感興趣,趕緊把這塊知識記錄下來! 二、準備工作 CREATE TABLE `order_de

原创 多線程處理容器ExecutorCompletionService使用

一、多線程的好處: 接口調用,往往離不開多線程,可以減少響應時間 二、場景: 1、業務A有1W個條形碼需要調用第三方(商品服務)獲取商品信息接口 2、第三方(商品服務)獲取商品信息接口, 單次只允許傳入10個條形碼來查詢 三、代碼: i

原创 mysql之事務隔離(二)

一、事務的特性(ACID)         原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability) 二、事務的隔離級別       默認事務隔離級別 mysql> s

原创 jvm內存結構(一)

    學習之餘,整理了下JVM的資料堆:需要重點關注的一塊區域,涉及到內存的分配與回收方法區:用於存儲已經被虛擬機加載的類信息、常量、靜態變量等數據,也叫永久區常量池:用於存放編譯期生成的各種字面量和符號引用(JDK6在方法區、JDK7

原创 緩存雪崩

      緩存服務器掛了或大量緩存集中在一段時間內失效,請求全部轉發到數據庫上,造成數據庫瞬時壓力過大雪崩!失效的幾種情況:1、緩存服務器掛了2、高峯期緩存局部失效3、熱點緩存失效  解決方案:1、避免緩存集中失效,不同的key設置不同

原创 手寫redis客戶端

一、RESP通信協議         Redis Serialization Protocol (Redis序列化協議).         特點:容易實現、解析快、可讀性強         以\r\n分割數據. 二、擼代碼  packa