Sem descrição

walkor b73c51a6d9 update README há 11 anos atrás
applications 000c7c0540 author注释 há 11 anos atrás
workerman 083f626d98 修正错误类型E_COMPILE_ERROR há 11 anos atrás
.gitignore 5e00c897de ignore há 12 anos atrás
README.md b73c51a6d9 update README há 11 anos atrás

README.md

workerman

workerman 是一个高性能的PHP socket服务框架,开发者可以在这个框架下开发各种网络应用,例如移动通讯、手游服务端、网络游戏服务器、聊天室服务器、硬件通讯服务器、智能家居等 workerman 具有以下特性

  • 支持HHVM,将PHP性能提高9倍左右
  • 多进程/多线程(多线程版本)
  • 支持TCP/UDP
  • 支持多端口监听
  • 支持各种应用层协议
  • 标准输入输出重定向
  • 守护进程化
  • 使用libevent事件轮询库,支持高并发
  • 支持文件更新检测及自动加载
  • 支持服务平滑重启
  • 支持telnet远程控制及监控
  • 支持异常监控及告警
  • 支持长连接
  • 支持以指定用户运行worker进程
  • 支持请求数上限配置
  • 服务端心跳支持

更多请访问www.workerman.net
文档doc.workerman.net

applications/Demo测试方法

  • 运行 telnet ip 8480
  • 首先输入昵称 回车
  • 后面直接打字回车是向所有人发消息
  • uid:聊天内容 是向uid用户发送消息

可以开多个telnet窗口,窗口间可以实时聊天

关于applications/Demo

一些demo连接

小蝌蚪聊天室workerman-todpole
多人在线flappybird
workerman-chat聊天室
json-rpc
thrift-rpc
统计监控系统

性能测试

###测试环境: 系统:debian 6.0 64位
内存:64G
cpu:Intel(R) Xeon(R) CPU E5-2420 0 @ 1.90GHz (2颗物理cpu,6核心,2线程) Workerman:开启200个Benchark进程 压测脚本:benchmark 业务:发送并返回hello字符串

###普通PHP(版本5.3.10)压测

短链接(每次请求完成后关闭链接,下次请求建立新的链接):
    条件: 压测脚本开500个并发线程模拟500个并发用户,每个线程链接Workerman 10W次,每次链接发送1个请求
    结果: 吞吐量:1.9W/S , cpu利用率:32% 

长链接(每次请求后不关闭链接,下次请求继续复用这个链接):
    条件: 压测脚本开2000个并发线程模拟2000个并发用户,每个线程链接Workerman 1次,每个链接发送10W请求
    结果: 吞吐量:36.7W/S , cpu利用率:69% 

内存:每个进程内存稳定在6444K,无内存泄漏

###HHVM环境压测

短链接(每次请求完成后关闭链接,下次请求建立新的链接):
    条件: 压测脚本开1000个并发线程模拟1000个并发用户,每个线程链接Workerman 10W次,每次链接发送1个请求
    结果: 吞吐量:3.5W/S , cpu利用率:35% 

长链接(每次请求后不关闭链接,下次请求继续复用这个链接):
    条件: 压测脚本开6000个并发线程模拟6000个并发用户,每个线程链接Workerman 1次,每个链接发送10W请求
    结果: 吞吐量:45W/S , cpu利用率:67% 

内存:HHVM环境每个进程内存稳定在46M,无内存泄漏