博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WebSocket实战之————Workerman服务器的安装启动
阅读量:7173 次
发布时间:2019-06-29

本文共 4743 字,大约阅读时间需要 15 分钟。

 安装php

apt-get install php5-cli
root@iZ23b64pe35Z:/home/www# php -vPHP 5.5.9-1ubuntu4.20 (cli) (built: Oct  3 2016 13:00:37)

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

root@iZ23b64pe35Z:/home/www# php -m | grep pcntlpcntlroot@iZ23b64pe35Z:/home/www# php -m | grep posixposix

安装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# lsApplications  composer.json  MIT-LICENSE.txt  README.md  start.phproot@iZ23b64pe35Z:/home/www/workerman-todpole# php start.php startPHP 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# lsApplications  composer.json  composer.lock  MIT-LICENSE.txt  README.md  start.php  vendor

启动正常

root@iZ23uv7rgv9Z:/home/www/workerman-todpole# php start.php startWorkerman[start.php] start in DEBUG mode----------------------- WORKERMAN -----------------------------Workerman version:3.3.6          PHP version:5.5.9-1ubuntu4.20------------------------ WORKERS -------------------------------user          worker                 listen                    processes statusroot          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/

测试结果:

成功安装!

状态详解

root@iZ23uv7rgv9Z:/home/www/workerman-todpole# php start.php statusWorkerman[start.php] status ---------------------------------------GLOBAL STATUS--------------------------------------------Workerman version:3.3.6          PHP version:5.5.9-1ubuntu4.20start 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可以使用系统、Kqueue等高级事件处理机制,能够显著提高WorkerMan在高并发连接时CPU利用率。在高并发长连接相关应用中非常重要。libevent扩展(或者event扩展)不是必须的,如果没安装,则默认使用PHP原生Select事件处理机制。)4 workers       11 processesworker_name           exit_status     exit_countTodpoleBusinessWorker 0                0TodpoleGateway        0                0Register              0                0WebServer             0                0---------------------------------------PROCESS STATUS-------------------------------------------pid    memory  listening                worker_name           connections total_request send_fail throw_exception4190    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#

红色为对应的4个worker

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

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

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

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

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

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

total_request 多少个请求

 

转载地址:http://klbzm.baihongyu.com/

你可能感兴趣的文章
QT creator+OpenCV2.4.2+MinGW 在windows下开发环境配置
查看>>
Allegro PCB Design GXL (legacy) 设置十字大光标
查看>>
数据结构--图的定义和存储结构
查看>>
[C#参考]委托机制
查看>>
linux常用命令
查看>>
自然杂志上的影评
查看>>
SQL Server 存储过程
查看>>
Appium自动化测试1 - 安装部署
查看>>
广州.NET微软技术俱乐部微信群各位技术大牛的blog
查看>>
《Redis设计与实现》之第九章:数据库
查看>>
10月10日学习内容整理:socketserver模块,ftp作业讲解
查看>>
P1352 没有上司的舞会
查看>>
Bzoj 1648: [Usaco2006 Dec]Cow Picnic 奶牛野餐 深搜,bitset
查看>>
关于《淘宝技术这十年》
查看>>
C#使用log4net记录日志
查看>>
halcon
查看>>
servlet过滤器
查看>>
maven向本地仓库导入jar包(处理官网没有的jar包)
查看>>
BNU OJ 51003 BQG's Confusing Sequence
查看>>
LightOJ 1422 Halloween Costumes
查看>>