本篇將去探索twemproxy源碼的主干流程,想來對于想要開始啃這份優(yōu)秀源碼生肉的童鞋會有不小的幫助。這里我們首先要找到 twemproxy正確的打開方式——twemproxy的文件結構,接著介紹twemproxy程序代碼框架,最后介紹twemproxy程序的主干流程。主干流程是本章節(jié)的重中之重。這次主要是為了能將這份代碼較為復雜的流程進行一些簡單的模塊分解和流程分解,以方便我們后面的閱讀。
twemproxy的文件結構
當然接下來首先要上一幅圖,就是twemproxy的文件結構圖
圖1 文件結構圖
如圖1所示,src下的是我們最重要的業(yè)務代碼,這里有幾個重要的文件夾,1文件夾里的是網絡編程模型,里面包含epoll,kqueue以及evport幾個常用的模型。2文件夾里的是哈希算法,其主要來哈希redis協(xié)議或者memcache協(xié)議的key,包括crc16,crc32,MD5等哈希算法。