原创 redis代碼結構之三類型庫-string

redis代碼結構之三類型庫-list  1. 類型庫概述 下面介紹redis核心的內容以及所支持的數據類型及操作。首先看一下相應的數據結構: typedef char *sds; //該文件返回的基本上都是sds,即char *,也是實

原创 Redis SNAPSHOT的實現

Redis SNAPSHOT 上一篇文章我們學習了redis aof的實現.這篇文章我們將學習redis的另一種持久化方式:snapshot(快照)。 同上一篇文章一樣,我們首先介紹相關參數;然後依次介紹它的使用場景。 1. 配置參數 s

原创 使用systemtap獲得內核函數的局部變量

使用systemtap獲得內核局部變量          這兩天在看內核的cgroup源碼,就想着通過某個工具來獲得一些調試信息如bt,參數返回值等,像在調試應用程序一樣使用gdb來獲得這些信息。所以就有了對systemtap的真正實踐。

原创 mysql子查詢(in)的實現

In子查詢的原理 1.    in原理 此調研的背景是同樣的select結果爲什麼使用子查詢會比不使用子查詢慢。我們使用的數據庫還是mysql官方的employees。進行的實驗操作爲下面兩個語句: 方法一:explain select

原创 mysql-proxy學習(四)——性能測試

1.     硬件配置 hwconfig Summary:        Intel S5500WBV, 2 x Xeon E5620 2.40GHz,23.5GB / 24GB 1067MHz System:         Intel

原创 REDIS AOF的實現

Redis AOF 上文我們介紹了Redis的主框架,以及兩種持久化大概原理。本文我們將從源碼角度分析Redis AOF的相關實現。(本文基於的版本爲2.4.2) 1. 相關配置項 首先我們看一下redis.conf裏的關於AOF的配置選

原创 erlang的rabbitmq client

  rabbitmq-erlang-client函數,命令: amqp_connection:which is used to open conne

原创 mysql proxy學習(二)——狀態轉移

mysql proxy學習(二)——狀態轉移 上一節我們已經知道了listen fd的回調函數network_mysqld_con_accept,該函數負責accept客戶端的連接network_socket_accept,然後進入與客戶

原创 轉:linux gcc 編譯時頭文件和庫文件搜索路徑

轉自:http://blog.csdn.net/rlj021/archive/2008/12/16/3530939.aspx 一、頭文件    gcc 在編譯時尋找所需要的頭文件 :    ※搜尋會從-I開始    ※然後找gcc的環

原创 redis代碼結構之二net,main,event

 redis代碼結構之二net,main,event 1. 網絡庫 anet.c、networking.c:這兩個文件主要實現與網絡通信以及與client之間的交互處理。 1.1 anet.c 該文件封裝了基本的網絡socket操作(tc

原创 redis代碼結構之一mem,bio

 Redis代碼結構 一mem,bio 1.       Redis代碼結構 事件庫 類型庫 網絡庫 持久化 複製 訂閱 事務 main client 其它 ae.c ae_epoll.c ae_kqueue.c ae_select.

原创 mysql proxy學習(一)啓動過程

mysql proxy學習(一)啓動過程 mysql-proxy依賴的庫較多包括:libevent,glib2,lua;所以代碼閱讀起來還是需要一些的相應的一些知識。 1. Libevent主要接口 event_base_new:初始化一

原创 AMQP協議

  AMQP協議 AMQP協議是一個異步消息傳遞所使用的應用層協議規範。又可以稱爲消息中間件協議。它是定義一個標準的接收及發送機制。它包括消息的路由

原创 MYSQL Order by的實現

本文使用的mysql版本爲5.1.48 select sql_no_cache * from one where id< 20 order by id;(id no key) #0 my_qsort2 (base_ptr=0x1b2176

原创 mysql proxy學習(三)——體系結構

 Mysql proxy體系結構:多線程+libevent+glib2 從前面的內容我們已經確認了accept過程是由主線程完成的,並且它創建了一個con->client的與client連接的event;並且它接着創建一個con->ser