PHP聊天室框架workerman-chat

workerman-chat是一个以workerman作为服务器容器,使用PHP开发的基于Websocket协议的一个可分布式部署的聊天室框架。

workerman-chat采用gateway workers 进程模型。gateway只负责网络IO,全异步非阻塞,每个gateway进程都可以同时接受上万客户端连接。 workers采用的是PHP开发者所熟悉的同步模型,并提供了开发者基本的接口 onConnect、onMessage、onClose、sendToClient、sendToAll等方法。 开发者只要在onConnect、onMessage、onClose三个方法中添加上自己的业务逻辑即可,开发维护非常简单。

由于采用的是gateway workers 进程模型,gateway和workers之间是无状态的,gateway和workers可以分别部署在不同的物理机上,所以扩容和升级都非常方便。 workerman-chat也非常适合游戏后台开发。

查看php聊天室demo请点击这里

项目地址

GitHub Repo stars
https://github.com/walkor/workerman-chat

特性

使用PHP开发
PHP多进程
gateway workers进程模型
支持libevent事件轮询库,支持高并发
默认使用Websocket协议,更小带宽,更好性能
支持分布式部署,可横向扩容
客户端跨浏览器支持
多房间支持
支持私聊
支持心跳检测

linux环境安装启动

首先:参考手册检查/安装workerman环境

1、下载workerman-chat,并解压缩到任意目录

2、进入到workerman-chat 运行php start.php start -d

3、浏览器访问端口 http://ip:55151 或者 http://域名:55151 (如果无法访问参考手册客户端连接失败)

Windows版本安装启动

1、下载workerman-chat,并解压缩到任意目录
2、双击start_for_win.bat运行
3、浏览器访问端口 http://ip:55151 或者 http://域名:55151 (如果无法访问参考手册客户端连接失败)
4、关闭终端停止

说明

本聊天室业务逻辑非常简单,业务逻辑都在文件./Applications/Chat/Events.php中,开发者可以随意修改,比如增加表情等功能

其它php聊天室相关案例(商业)

泡泡IM是一款基于gatewayWorker开发的聊天系统,支持IOS APP、安卓APP、微信小程序、H5、PC浏览器、桌面软件。
地址 泡泡IM 聊天源码

地址 泡泡IM 聊天源码