首先說明,該項目不是本人的項目,本文轉自盒子。
該項目使用的DIOCP版本為1.0,目前diocp為3.5
以下是盒子的原文
------------------------------------------------------------------------------
DIOCP是Delphi下進行IOCP服務端通訊開發的一個非常好的開源框架,穩定、高效並且使用起來十分簡單。
自己兩個多月之前因為需要使用Delphi開發一個TCP服務端,當時也是到處爬文,希望找到一個穩定且好用的IOCP開源框架,整整一周的時間,看了很多,也對比了很多,最後選擇了DIOCP,現在服務器端正式版本已經上線運行了36天的時間了,所有運行一切穩定,無論是CPU占用、內存使用還是通信穩定性,DIOCP的表現真的沒有讓我失望,表現得非常優秀,閒話不說,直接上圖:
服務器環境:
OS:Windows Server 2003
CPU:Intel 雙核 內存:2G
網絡帶寬:5M
網絡類型:BGP
實際性能數據:
程序用戶同時在線數:1200 – 1300之間 峰值:1511(此峰值為真實用戶同時在線數,不是理論性能峰值,目前的用戶數只有這些,自己測試的時候,連接數測試過5K,也同樣運行穩定)。
服務器端運行到發文時已經36天多了,內存峰值也只有76M,CPU占用一直都穩定在10%以下,應該說各項指標都非常的好,非常滿意。
說實話,現在真正在使用Delphi進行開發的團隊不算多了,但是Delphi中總是有很多的東西讓我無法完全割捨它,比如它的快速開發、再比如網絡上無比多的第三方控件、再再比如它強大的數據操縱能力等等等等。現在這些理由中又多了一項,就是DIOCP。特意寫這篇文章就是為了把這個好東西推薦給大家。源碼地址:
源碼:https://git.oschina.net/ymofen/DIOCP
DEMO:https://git.oschina.net/ymofen/diocp-samples DEMO當中大家就會看到,只需要在uClientContext單元的dataReceived方法中加入自己的整個業務邏輯層就可以了,DEMO中還配有客戶端的例子,很完整。
另外,現在DIOCP正在發展DIOCP3,封裝程度更好,用起來更加的方便,回頭,我也要抓緊去研究一下。
DIOCP3的源碼地址是:https://github.com/ymofen/diocp3