当前位置:  首页>> 技术小册>> PHP高性能框架-Workerman

安装环境说明:
Linux用户只能使用Linux版本的Workerman。
1、安装PHP>=5.4,并安装了pcntl、posix扩展
2、建议安装event扩展,但不是必须的(注意event扩展需要PHP>=5.4)

Linux环境检查脚本
Linux用户可以运行以下脚本检查本地环境是否满足WorkerMan要求

curl -Ss https://www.workerman.net/check | php

如果脚本中全部提示ok,则代表满足WorkerMan运行环境.

查看php版本:

  1. root@e41c67052227:/var/www/html# php -v
  1. PHP 7.3.29 (cli) (built: Aug 17 2021 13:54:23) ( NTS )
  2. Copyright (c) 1997-2018 The PHP Group
  3. Zend Engine v3.3.29, Copyright (c) 1998-2018 Zend Technologies
  4. with Xdebug v2.7.2, Copyright (c) 2002-2019, by Derick Rethans

运行环境检查脚本:

  1. root@e41c67052227:/var/www/html# curl -Ss https://www.workerman.net/check | php
  2. PHP Version >= 5.4.0 [OK]
  3. Extension pcntl check [fail]
  4. Extension posix check [OK]

可以看到运行环境检查脚本主要检查了三个选项:

  • php版本是否高于5.4.0
  • 是否安装了php扩展:pcntl
  • 是否安装了php扩展: posix

可以看到我们服务器中的php没有安装pcntl扩展。

安装缺失扩展
安装php扩展大家可以根据自己的环境却搜索对应的安装方法。
我这里的环境是在docker下安装的,如果是使用docker环境运行php,安装扩展比较简单:
通过docker-php-ext-install命令安装即可。

  1. root@e41c67052227:/var/www/html# docker-php-ext-install pcntl
  2. Configuring for:
  3. PHP Api Version: 20180731
  4. Zend Module Api No: 20180731
  5. Zend Extension Api No: 320180731
  6. checking for grep that handles long lines and -e... /bin/grep
  7. checking for egrep... /bin/grep -E
  8. xxx省略安装输出

我们执行php命令查看扩展安装结果:

  1. root@e41c67052227:/var/www/html# php -m | grep pcntl
  2. pcntl

可以看到pcntl扩展已安装成功。
我们再次运行环境检测脚本测试:

  1. root@e41c67052227:/var/www/html# curl -Ss https://www.workerman.net/check | php
  2. PHP Version >= 5.4.0 [OK]
  3. Extension pcntl check [OK]
  4. Extension posix check [OK]

可以看到,以上的三个条件都显示OK,代表们的环境通过了Workerman的环境检查。

下面对这两个扩展进行简说明:

pcntl扩展
pcntl扩展是PHP在Linux环境下进程控制的重要扩展,WorkerMan用到了其进程创建、信号控制、定时器、进程状态监控等特性。
posix扩展
posix扩展使得PHP在Linux环境可以调用系统通过POSIX标准提供的接口。WorkerMan主要使用了其相关的接口实现了守护进程化、用户组控制等功能。

注意:以上两个扩展都只支持Linux平台,不支持Windows,因此也推荐大家在Linux平台运行Workerman。