簡單的 C++ 網絡服務框架 Sim 介紹

encn 9年前發布 | 16K 次閱讀 sim C/C++開發

原文  http://www.ideawu.net/blog/archives/883.html

可測性

Sim 采用了一種極簡的報文格式, 在你沒有開始寫 Client 時, 你就可以利用手上現成的工具, 如 nc, telnet 來測試. 可測性非常重要, 你可以隨時查看代碼的執行效果, 這對開發者的心理會產生非常正面的促進作用. 即使你不想使用 nc 這樣的命令, 你想寫 PHP 或者 Python 腳本, 也是非常簡單的.

例如, 你采用 Sim 框架寫了一個計算加法的服務器. 這時怎么測試呢? 很簡單! 在命令行執行

$ nc 127.0.0.1 8800 add 1 3 ok 4

隨時隨地地通過實際的輸入和輸出來測試程序, 會讓程序員的心理更愉悅. 如果通過枯燥的單元測試, 進行大量參數配置, 只會讓人心慌, 影響開發效率.

內置 Log/Config 工具

Sim 采用了 SSDB 項目 的日志和配置代碼, 讓你的服務器立即就擁有日志輸出功能和可配置性. 日志非常重要, 我幾乎不使用 gdb 這樣底層的調試工具. 有了 Config, 像修改端口這樣的簡單需求, 就不用再修改代碼重新編譯了.

進程管理

Sim 提供了的工具可以讓你的程序啟動為后臺進程, 不用借助 supervisor, nohup 這樣的額外工具.

關于性能

記住, 不要一開始就關心性能, 計算機和 C++ 比你相像的要快得多!

其它

Sim 的應用場景是訂閱-分發模式, 對于請求響應模式, 你需要做一些功夫. 但接下來會提供的.

Sim 完全開源, 基于 New BSD 協議.

項目地址: https://github.com/ideawu/sim

</div> </div>

 本文由用戶 encn 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!