(1)技術(shù)系列之 線程。服務(wù)器設(shè)計的基本模塊。文章已經(jīng)完成。使用方面有很多的第三方庫可以選擇。
(2)技術(shù)系列之 狀態(tài)機(jī)。服務(wù)器設(shè)計的常用模塊。文章完成一半。boost中有狀態(tài)機(jī)庫可以使用,本人并不太喜歡這種使用方式,還是比較喜歡能直觀反映狀態(tài)事件轉(zhuǎn)換的列表方式。其它庫未發(fā)現(xiàn)有可以使用的狀態(tài)機(jī)模塊。文中已將面向過程的狀態(tài)機(jī)實現(xiàn),后續(xù)待完成。
(3)技術(shù)系列之 內(nèi)存管理。提高服務(wù)器性能的必選模塊。服務(wù)器設(shè)計人員在一段時間的摸索后,都會發(fā)現(xiàn):服務(wù)器性能的關(guān)鍵在于內(nèi)存。從收包到解析,到消息內(nèi)存的申請,到session結(jié)構(gòu)內(nèi)存的申請都要小心處理,盡量減少內(nèi)存數(shù)據(jù)copy,減少內(nèi)存動態(tài)申請,減少內(nèi)存檢索。
(4)技術(shù)系列之 定時器。服務(wù)器端維護(hù)狀態(tài)一致性,保證系統(tǒng)可以自動凈化的必備模塊。
(5)技術(shù)系列之 網(wǎng)絡(luò)模型。服務(wù)器端必須模塊。windows下的iocp,unix下的epoll。ace、boost等都有專門的包供使用。
(6)技術(shù)系列之 回調(diào)設(shè)計/接口設(shè)計。常用設(shè)計。本不打算寫這篇文章。前一段時間發(fā)現(xiàn)不少人討論,總結(jié)一篇吧。
(7)技術(shù)系列之 必備外圍功能。完善的log機(jī)制,強(qiáng)大的交互式shell,telnet模塊,配置模塊,實時管理模塊等。
(8)技術(shù)系列之 存儲相關(guān)。磁盤緩存,分布式緩存,內(nèi)存數(shù)據(jù)庫。目前還沒有把握能寫的很全面。
(9)最后可能寫點零散的小功能,到時候再看了。
寫個提綱,給自己一個督促,希望能早點完成吧。本還打算寫點常用的協(xié)議,常用的加密算法等,依照我現(xiàn)在的寫文章速度,估計要2009年了。