| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
encn
10年前发布

简单的 C++ 网络服务框架 Sim 介绍

原文  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>

 本文由用户 encn 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1432132861255.html
sim C/C++开发