
1. 概念 我們知道,Elasticsearch(ES) 的底層存儲(chǔ)引擎是 Lucene,ES 調(diào)用 Lucene 的接口進(jìn)行 CRUD,寫入 ...
VInt 介紹 VInt (variable-length Integer) 變長(zhǎng)整數(shù),指的是使用動(dòng)態(tài)變化的字節(jié)數(shù)來表示整數(shù)。我們熟悉的編程語...
一、背景 公司業(yè)務(wù)訂單數(shù)據(jù)增量大概在 4 億每月,訂單在數(shù)據(jù)庫中存量保存 3 個(gè)月數(shù)據(jù),一共 12 億文檔 1 TB 數(shù)據(jù)。平時(shí)讀 QPS 在 ...
系統(tǒng)調(diào)用 在講解io之前,先介紹下系統(tǒng)調(diào)用。系統(tǒng)調(diào)用是操作系統(tǒng)內(nèi)核提供給外部訪問的最小接口,運(yùn)行在內(nèi)核態(tài),如果應(yīng)用層需要訪問cpu、內(nèi)存、io等...
在使用go語言開發(fā)項(xiàng)目時(shí),有這么個(gè)需求:在函數(shù)返回前檢查某個(gè)值是否合法,如果不合法則進(jìn)行修正。那最自然的實(shí)現(xiàn)方式如下: 但是這種方式有個(gè)弊端,當(dāng)...
前言 HashMap在java程序中使用頗為頻繁,因此掌握HashMap的底層實(shí)現(xiàn)顯得格外重要。相信大家也知道HashMap是非線程安全的,在多...
前言 單例模式應(yīng)該是編程中使用最多的設(shè)計(jì)模式之一,寫好單例模式往往能體現(xiàn)一個(gè)程序員的基本功。單例模式看似簡(jiǎn)單,但是要將其設(shè)計(jì)得高效、安全、優(yōu)雅,...
前言 java 相較于 c、c++ 語言的優(yōu)勢(shì)之一是自帶垃圾回收器,程序開發(fā)人員不用手動(dòng)管理內(nèi)存,內(nèi)存的分配和釋放完全由 gc (Garbage...
基本概念 數(shù)據(jù)庫的索引類似書的目錄,我們通過標(biāo)題及其對(duì)應(yīng)的頁碼便可快速的找到標(biāo)題對(duì)應(yīng)的內(nèi)容。在數(shù)據(jù)庫中,可以根據(jù)索引快速定位記錄的位置,然后從磁...