当前位置: 首页 > 软件库 > 服务器软件 > HTTP服务器 >

hetao

超高性能 Web 服务器
授权协议 LGPL
开发语言 C/C++
所属分类 服务器软件、 HTTP服务器
软件类型 开源软件
地区 国产
投 递 者 栾和风
操作系统 Linux
开源组织
适用人群 未知
 软件概览

说明:本项目与此前的 htmlserver 项目为同一个开发者开发的相同项目,旧项目已不再更新。现在代码已移到新项目 hetao。

hetao 是一款国人原创研发的开放源代码的 C 语言实现的支持高并发、超高性能 Web 服务器,使用高性能 HTTP 解析器 fasterhttp 作为其解析核心。

hetao在开启 Keep-Alive 和 gzip 压缩时性能比 nginx 约快3倍。

目前只支持Linux,后面会支持WINDOWS。

hetao 功能:

  • 支持HTTP/1.0、HTTP/1.1

  • 支持通讯超时控制

  • 支持多侦听端口

  • 支持多虚拟主机(基于域名)

  • 支持自定义错误页面

  • 支持自定义缺省index文件

  • 支持自适应Keep-Alive

  • 支持自适应gzip、deflate压缩

  • 支持工作进程绑定CPU

  • 支持工作进程崩溃后,管理进程自动重启工作进程

  • 支持优雅重启/重载配置,重启期间完全不中断对外服务

  • 支持反向代理负载均衡(目前支持轮询、最少连接数算法)
    (以上应该就是一个Web服务器的主要功能了吧)

性能压测:

软件结构:

内部实现:

源代码托管:

http://git.oschina.net/calvinwilliams/hetao

https://github.com/calvinwilliams/hetao

  • SlightPHP 高效的PHP敏捷开发框架 支持composer,同时需要php5.3及以上 安装方法一 ,执行下面的命令 //使用中国镜像 composer config -g repo.packagist composer https://packagist.phpcomposer.com //下载安装最新 composer require "hetao29/slightphp:dev-ma

  • SlightPHP 高效的PHP敏捷开发框架 v3.2更新如下 解决pecl在Workerman里不关闭文件,并有部分内存泄露的问题 优化一些算法,run($path)和request_uri的一致 v3.1更新如下 更新pecl,更好支持php7,php5 优化SDb,SRedis,增加错误连接重置,可以更好的支持WorkerMan,Swoole v3.0支持composer,同时需要php5.

 相关资料
  • imi v1.0.13 版本新增了一个 Swoole\Coroutine\Http\Server 实现的协程服务器。需要 Swoole 4.4+ 才可使用该特性。 该特性是可选的,不影响以前使用的服务器模式。 使用协程服务器特性,依靠 Linux 系统的端口重用机制,系统级的负载均衡,可以让你的多进程 Http 服务处理请求的能力得到提升。 使用 ab,本机->虚拟机(双核+2进程)压测Hello

  • 本文向大家介绍单台web服务器如何尽可能的提高网站性能,包括了单台web服务器如何尽可能的提高网站性能的使用技巧和注意事项,需要的朋友参考一下 我觉得首先要选择一个合适的环境,对于大多数php站点来说,运行在lnmp(linux+nginx+mysql+php)环境下是个理想的选择. 首先一点linux对比win的优势我就不说了。 其次nginx的优势总结起来就是负载均衡,高并发性能优异。 这里p

  • 我正在建立一个新的GlassFish服务器4.1.1,上面部署了一个Java的web服务。web服务有一个web方法,它接收JSON作为输入参数,结果也返回一个JSON。为了将Java对象序列化/反序列化到JSON,我使用了Gson库。web方法正在调用另一个web服务,一次运行大约执行2-3分钟。例如,我在循环中调用这个web服务6-10次,因此web方法大约要等待16-30分钟才能返回一个值。

  • Swoole框架提供的WebServer有3种使用方法 一、直接使用HttpServer HttpServer支持静态文件和include file。业务代码不需要写任何Server的代码,只需要设置document_root,并编写对应php文件。这种使用方法与Apache/Nginx+FPM类似。 server.php $AppSvr = new Swoole\Network\Protocol

  • 我正在开发web套接字应用程序。从前端来看,每个应用程序都有一个插座。但我不确定后端。我们将Python和nginx与Flask socketIO和socket io客户端库一起使用。此体系结构将用于通知前端发生了更改,并应更新数据。 以下是我的疑问-服务器上将创建多少套接字和线程?不同连接之间是否可以共享套接字?是否有任何工具可以分析插座是否打开?