PHP聊天室开源系统workerman-chat
(2015-01-23 09:07:50)PHP聊天室框架
workerman-chat是一个以workerman作为服务器容器,使用PHP开发的基于Websocket协议的一个可分布式部署的聊天室框架。
workerman-chat采用gateway workers 进程模型。gateway只负责网络IO,全异步非阻塞,每个gateway进程都可以同时接受上万客户端连接。 workers采用的是PHP开发者所熟悉的同步模型,并提供了开发者基本的接口 onGatewayMessage、onMessage、onClose、sendToClient、sendToAll等方法。开发者只要在onGatewayMessage、onMessage、onClose三个方法中添加上自己的业务逻辑即可,开发维护非常简单。
由于采用的是gateway workers 进程模型,gateway和workers之间是无状态的,gateway和workers可以分别部署在不同的物理机上,所以扩容和升级都非常方便。 workerman-chat也非常适合游戏后台开发。
特性
- 使用PHP开发
- PHP多进程
- gateway workers进程模型
- 支持libevent事件轮询库,支持高并发
- 默认使用Websocket协议,更小带宽,更好性能
- 支持分布式部署,可横向扩容
- 客户端跨浏览器支持(需要浏览器支持html5或者flash)
- 多房间支持
- 支持私聊
- 支持心跳检测
- 同样非常适合游戏后台开发
安装启动
1、下载workerman-chat,并解压缩到任意目录
2、启动workerman./workerman/bin/workermand start
如下图
如果无法启动请检查php扩展是否安装
命令行运行yum install php-cli php-process git php-devel php-pear libevent-devel
3、浏览器访问端口55151,例如workerman.net:55151如图:
说明
本聊天室业务逻辑非常简单,业务逻辑都在文件./applications/Chat/Event.php中,开发者可以随意修改
http://blog.sina.com.cn/s/blog_5fd841bf0102v9ab.html