原创 Elasticsearch analysis & 自定義 analyzers
當一個 document 被索引時, 通常是對應每個 field 都生成一個倒排索引(Inverted Index)用於作爲存儲的數據結構, 關於倒排索引, 推薦炮哥之前寫的一篇文章可以結合參考理解. 每個 field 的倒排索引是由「對應
原创 爲什麼MongoDB採用B樹索引,而Mysql用B+樹做索引
先從數據結構的角度來答。題主應該知道B-樹和B+樹最重要的一個區別就是B+樹只有葉節點存放數據,其餘節點用來索引,而B-樹是每個索引節點都會有Data域。這就決定了B+樹更適合用來存儲外部數據,也就是所謂的磁盤數據。從Mysql(Inood
原创 linux bash基礎
bash環境配置: 配置文件,生效範圍劃分,存在兩類: 全局配置: /etc/profile, /etc/profile.d/*.sh, /etc/bashrc 個人配置:
原创 Innodb中的事務隔離級別和鎖的關係
前言:我們都知道事務的幾種性質,數據庫爲了維護這些性質,尤其是一致性和隔離性,一般使用加鎖這種方式。同時數據庫又是個高併發的應用,同一時間會有大量的併發訪問,如果加鎖過度,會極大的降低併發處理能力。所以對於加鎖的處理,可以說就是數據庫對於事
原创 linux rpm和yum詳解
rpm定義:包管理器rpm程序包的組成部分: 二進制程序:/bin, /sbin,/ /usr/bin, /usr/sbin, 庫文件:/lib64, /usr/lib64 配置文件:/etc 幫助文件:manual
原创 linux 進程管理命令詳解
進程調度Linux進程調度的目標 1.高效性:高效意味着在相同的時間下要完成更多的任務。調度程序會被頻繁的執行,所以調度程序要儘可能的高效; 2.加強交互性能:在系統相當的負載下,也要保證系統的響應時間; 3.保證公平和避
原创 yii2源碼分析之執行基本流程
用yii2框架用了將近2年,一直都沒有去看過它底層源碼, 馬上快不用了,最近對其源碼研究一番,哈哈廢話少說,上代碼,入口文件是web/index.php<?php defined('YII_DEBUG') or define('YII_
原创 MONGODB 分片集羣技術
1.1 MongoDB複製集簡介 一組Mongodb複製集,就是一組mongod進程,這些進程維護同一個數據集合。複製集提供了數據冗餘和高等級的可靠性,這是生產部署的基礎。1.1.1 複製集的目的 保證數據在生產部署時的冗餘和可靠性,通
原创 composer autoload源碼分析
現在很多主流框架都用到了composer,包管理實在是方便。現在我就以yii2來舉例追蹤一遍composer autoload流程第一步上yii2的web/index.php(入口文件)<?php defined('YII_DEBUG')
原创 Linux終端複用神器-Tmux使用梳理
Tmux是一個優秀的終端複用軟件,類似GNU Screen,但來自於OpenBSD,採用BSD授權。使用它最直觀的好處就是,通過一個終端登錄遠程主機並運行tmux後,在其中可以開啓多個控制檯而無需再“浪費”多餘的終端來連接這臺遠程主機;是B
原创 linux 用戶管理相關知識
linux 用戶管理基本知識:linux用戶: UID範圍:0-65535 uid爲0對應root uid爲1-499(centos 6)或者1-999(centos 7)爲系統用戶 uid爲
原创 linux 磁盤文件系統詳解
硬盤一般分爲機械硬盤和SSD硬盤: 機械硬盤的速度相比SSD硬盤差一大截.但價格比後者便宜一個檔次,而服務器一般用的也是機械硬盤.我們以下講的知識都是機械硬盤相關每塊硬盤可以分爲多個磁道或者多個扇區(512 bytes)或者多個柱面(
原创 linux 基礎命令大全(二)
cat作用:從首到尾查看文件選項: -n 顯示行號 -e 相當於-vE -v 顯示非打印字符 -E 顯示$在每行的行尾tac作用:從尾到首顯示文件選項和cat一致more作用:讓畫面在顯示滿一頁時暫停
原创 yii2源碼分析之組件實例化流程
讀本篇文章,建議先看看我之前的文章php依賴注入到此,現在我們正式開始分析yii2框架組件構造流程我們先從yii\di\ServiceLocator(服務定位器)入手吧!!讓我們先看個實例:use yii\di\ServiceLocator
原创 linux 文件特殊權限
Linux文件系統上的特殊權限 進程的安全上下文: 前提:進程有屬主(進程以哪個用戶的身份運行);文件有屬主和屬組; (1) 用戶是否能夠把某個可執行程序文件啓動爲進程,取決於用戶對程序文件是否擁有執行權限