一周前我发布了超高性能 Web 服务器软件 htmlserver(登陆时手误用了我的另一个很早就不用的账号 BetonArmEE,其实 calvinwilliams 才是我的正号^_^),引起了朋友们的广泛回应,针对名字取得不好和版本号问题,我另起了一个项目 hetao,把 htmlserver 1.0.0 移过来作为 hetao 0.1.0,后加入反向代理负载均衡功能后更新到了0.2.0。
htmlserver 已废弃,代码移至 hetao 继续开发。
再次感谢广大朋友们的关注和支持,谢谢!
我重新做了压测,加入了阿里的 Tengine 和另一款国产的 Kangle(最新稳定版,但是编译通不过,可能是我的红帽子企业版5.4自带编译器太老了,最后没有参与评测)一起评测。
新压测发现之前的环境有问题,因为 Apache 自带的压测工具 ab 仅支持 HTTP/1.0,而 Nginx 和基于 Nginx 改造的 Tengine 处理 HTTP/1.0 请求时,不能同时开启 Keep-Alive 和压缩(可能是个 BUG,或者是我使用不对,有知道的朋友请指导我一下;Apache 则没有此问题),导致和 htmlserver 的性能差过大,在重新压测时我通过修改 ab.c 源码临时规避了该问题,这样的压测才公平。
新的性能结果是 hetao(htmlserver) 比 Nginx 和阿里 Tengine 快3.5倍。具体压测环境和方案见文档
------------------------------------------------------------
hetao 0.2.0 发布,超高性能 Web 服务器(原 htmlserver)
hetao 是一款国人原创研发的开源的 C 语言实现的支持高并发、超高性能 Web 服务器,使用高性能 HTTP 解析器 fasterhttp 作为其解析核心。
hetao 在开启 Keep-Alive 和 gzip 压缩时性能比 nginx 约快3倍。
hetao 功能:
* 支持 HTTP/1.0、HTTP/1.1
* 支持通讯超时控制
* 支持多侦听端口
* 支持多虚拟主机(基于域名)
* 支持自定义错误页面
* 支持自定义缺省 index 文件
* 支持自适应 Keep-Alive
* 支持自适应 gzip、deflate 压缩
* 支持工作进程绑定 CPU
* 支持工作进程崩溃后,管理进程自动重启工作进程
* 支持优雅重启/重载配置,重启期间完全不中断对外服务
* 支持反向代理负载均衡(目前支持轮询、最少连接数算法)
性能压测:(详见文档)
内部实现:
源代码托管: