合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
[TOC] [workerman相关手册](https://www.workerman.net/doc) [workerman 手册](https://www.workerman.net/doc/workerman/) [gateway-worker 手册 (workerman.net)](https://www.workerman.net/doc/gateway-worker/) [webman 手册 (workerman.net)](https://www.workerman.net/doc/webman/) ## **安装前检查(lnux)** ``` curl -Ss https://www.workerman.net/check | php ``` >[danger]检查php版本大于5.4或者是否安装pcntl扩展,posix扩展(两扩展只在linux支持) 此外还建议安装event扩展,但不是必须的(没安装,则默认使用PHP原生Select事件处理机制),能够显著提高WorkerMan在高并发连接时CPU利用率。在高并发长连接相关应用中非常重要 ## **Composer安装:** ~~~sh composer require workerman/workerman ~~~ ## **启动与停止** 注意Workerman启动停止等命令都是在命令行中完成的。 要启动Workerman,首先需要有一个启动入口文件,里面定义了服务监听的端口及协议。可以参考[入门指引--简单开发实例部分](https://www.workerman.net/doc/workerman/getting-started/simple-example.html) 这里以[workerman-chat](https://www.workerman.net/workerman-chat)为例,它的启动入口为start.php。 ### 启动 以debug(调试)方式启动 ``` php start.php start ``` 以daemon(守护进程)方式启动 ``` php start.php start -d ``` ### 停止 ``` php start.php stop ``` ### 重启 ``` php start.php restart ``` ### 平滑重启 平滑重启可以做到在不影响用户的情况下重启服务,以便重新载入PHP程序,完成业务代码更新 ``` php start.php reload ``` ### 查看状态 ``` php start.php status ``` ### 查看连接状态(需要Workerman版本>=3.5.0) ``` php start.php connections ``` ## debug和daemon方式区别 * 1、以debug方式启动,代码中echo、var\_dump、print等打印函数会直接输出在终端。 * 2、以daemon方式启动,代码中echo、var\_dump、print等打印会默认重定向到/dev/null文件,可以通过设置`Worker::$stdoutFile = '/your/path/file';`来设置这个文件路径。 * 3、以debug方式启动,终端(命令行窗口)关闭后workerman会随之关闭并退出。 * 4、以daemon方式启动,终端关闭后workerman继续后台正常运行。 ## **注意** * 使用require_once/include_once加载文件(WorkerMan会缓存编译后的PHP文件不会主动释放) * 开发者可以直接使用WorkerMan提供的[数据库类](https://www.workerman.net/doc/workerman/components/workerman-mysql.html),有断开重连的功能(WorkerMan会缓存编译后的PHP文件不即静态成员不会被释放,但是数据库连接(一般是单例模式,且保存在静态成员中)在一定时间内没有操作会自动关闭) * 注意不要使用exit、die出语句 * 改完代码需要重启服务才能生效, * 初次链接必须在服务器放开端口(如确认服务器防火墙或安全组是否允许8181端口的入站连接)