0
点赞
收藏
分享

微信扫一扫

WebSocket实战之————Workerman服务器的安装启动

汤姆torn 2023-02-21 阅读 55


 安装php



apt-get install php5-cli



root@iZ23b64pe35Z:/home/www# php -v
PHP 5.5.9-1ubuntu4.20 (cli) (built: Oct 3 2016 13:00:37)



 检查pcntl、posix扩展(已经安装成功)



root@iZ23b64pe35Z:/home/www# php -m | grep pcntl
pcntl
root@iZ23b64pe35Z:/home/www# php -m | grep posix
posix



安装git



apt-get install git



下载 workerman-todpole



git clone https://github.com/walkor/workerman-todpole.git



缺少官方依赖包,直接启动发现会报错:



root@iZ23b64pe35Z:/home/www# cd workerman-todpole/
root@iZ23b64pe35Z:/home/www/workerman-todpole# ls
Applications composer.json MIT-LICENSE.txt README.md start.php
root@iZ23b64pe35Z:/home/www/workerman-todpole# php start.php start
PHP Warning: require_once(/home/www/workerman-todpole/vendor/autoload.php): failed to open stream:
No such file or directory in /home/www/workerman-todpole/start.php on line 29



 安装:Composer 是 PHP 的一个依赖管理工具(全局安装)



curl -sS https://getcomposer.org/installer | php



mv composer.phar /usr/local/bin/composer



注意: 如果上诉命令因为权限执行失败, 请使用 sudo 再次尝试运行 ​​mv​​ 那行命令。

现在只需要运行 ​​composer​​​ 命令就可以使用 Composer 而不需要输入 ​​php composer.phar​

​vendor​​​目录是依赖库的目录,这些其实都是可以通过一个命令来得到的,只要你提供​​composer.json​​​文件,那么你将这个项目​​git clone​​下来之后,直接:



composer install



就可以得到相应的依赖库了。

再次启动workerman



root@iZ23uv7rgv9Z:/home/www/workerman-todpole# ls
Applications composer.json composer.lock MIT-LICENSE.txt README.md start.php vendor



启动正常



root@iZ23uv7rgv9Z:/home/www/workerman-todpole# php start.php start
Workerman[start.php] start in DEBUG mode
----------------------- WORKERMAN -----------------------------
Workerman version:3.3.6 PHP version:5.5.9-1ubuntu4.20
------------------------ WORKERS -------------------------------
user worker listen processes status
root TodpoleBusinessWorker none 4 [OK]
root TodpoleGateway websocket://0.0.0.0:8282 4 [OK]
root Register text://0.0.0.0:1237 1 [OK]
root WebServer http://0.0.0.0:8383 2 [OK]
----------------------------------------------------------------
Press Ctrl-C to quit. Start success.



查看本机的IP地址:



ip addr



再次启动workerman,在浏览器地址输入



http://本机IP地址:8383/



测试结果:

WebSocket实战之————Workerman服务器的安装启动_PHP

成功安装!

状态详解



root@iZ23uv7rgv9Z:/home/www/workerman-todpole# php start.php status
Workerman[start.php] status
---------------------------------------GLOBAL STATUS--------------------------------------------
Workerman version:3.3.6 PHP version:5.5.9-1ubuntu4.20
start time:2016-12-22 22:53:51 run 0 days 0 hours
load average: 0, 0.01, 0.05 event-loop:select(libevent扩展(或者event扩展)使得PHP可以使用系统Epoll、Kqueue等高级事件处理机制,能够显著提高WorkerMan在高并发连接时CPU利用率。在高并发长连接相关应用中非常重要。libevent扩展(或者event扩展)不是必须的,如果没安装,则默认使用PHP原生Select事件处理机制。)
4 workers 11 processes
worker_name exit_status exit_count
TodpoleBusinessWorker 0 0
TodpoleGateway 0 0
Register 0 0
WebServer 0 0
---------------------------------------PROCESS STATUS-------------------------------------------
pid memory listening worker_name connections total_request send_fail throw_exception
4190 1.25M http://0.0.0.0:8383 WebServer 0 0 0 0
4191 1.25M http://0.0.0.0:8383 WebServer 0 0 0 0
4189 1.5M text://0.0.0.0:1237 Register 8 8 0 0
4185 1.5M websocket://0.0.0.0:8282 TodpoleGateway 5 4 0 0
4186 1.5M websocket://0.0.0.0:8282 TodpoleGateway 5 4 0 0
4187 1.5M websocket://0.0.0.0:8282 TodpoleGateway 5 4 0 0
4188 1.5M websocket://0.0.0.0:8282 TodpoleGateway 5 4 0 0
4181 1.75M none TodpoleBusinessWorker 5 3 0 0
4183 1.75M none TodpoleBusinessWorker 5 1 0 0
4182 1.75M none TodpoleBusinessWorker 5 1 0 0
4184 1.75M none TodpoleBusinessWorker 5 1 0 0
root@iZ23uv7rgv9Z:/home/www/workerman-todpole#



WebSocket实战之————Workerman服务器的安装启动_PHP_02

红色为对应的4个worker

黄色为每个worker退出的次数和状态

 例如执行一个:php start.php reload (reload命令的话)

TodpoleBusinessWorker 会退出,(启动的时候会直接去连接TodpoleGateway内部端口,会建立起通讯的,不会监听端口的)

TodpoleGateway(维持客户端连接,如果退出就会和客户端断开的,会监听端口的)是不会退出的

WebServer 有两个进程也会退出两次

Register(维持TodpoleBusinessWorker 和TodpoleGateway之间进行通信的)内部服务,没有任何逻辑,所以也不会退出的

total_request 多少个请求

 









举报

相关推荐

0 条评论