安装php

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

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

  1. root@iZ23b64pe35Z:/home/www# php -m | grep pcntl
  2. pcntl
  3. root@iZ23b64pe35Z:/home/www# php -m | grep posix
  4. posix

安装git

  1. apt-get install git

下载 workerman-todpole

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

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

  1. root@iZ23b64pe35Z:/home/www# cd workerman-todpole/
  2. root@iZ23b64pe35Z:/home/www/workerman-todpole# ls
  3. Applications composer.json MIT-LICENSE.txt README.md start.php
  4. root@iZ23b64pe35Z:/home/www/workerman-todpole# php start.php start
  5. 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 的一个依赖管理工具(全局安装)

  1. curl -sS https://getcomposer.org/installer | php
  1. mv composer.phar /usr/local/bin/composer

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

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

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

  1. composer install

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

再次启动workerman

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

启动正常

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

查看本机的IP地址:

  1. ip addr

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

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

测试结果:

成功安装!

状态详解

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

红色为对应的4个worker

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

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

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

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

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

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

total_request 多少个请求

WebSocket实战之————Workerman服务器的安装启动的更多相关文章

  1. nginx入门与实战 安装 启动 配置nginx Nginx状态信息(status)配置 正向代理 反向代理 nginx语法之location详解

    nginx入门与实战 网站服务 想必我们大多数人都是通过访问网站而开始接触互联网的吧.我们平时访问的网站服务 就是 Web 网络服务,一般是指允许用户通过浏览器访问到互联网中各种资源的服务. Web ...

  2. 在Mac上关于tomcat服务器的安装、配置、启动、部署web详细流程

    之前在Mac上通过安装mamp来搭建PHP环境服务器,但是对于java来说,目前还是没有找到类似mamp这样强大的软件来构建及管理java环境服务器,所以目前也是通过命令行来进行tomcat服务器的安 ...

  3. 在阿里云服务器上安装完成并启动Tomcat后,通过http不能访问--解决办法

    在阿里云服务器上安装完成并启动Tomcat后,通过http不能访问的原因是阿里云平台为了安全设置了安全组策略,必须我们授权的端口,其他计算机才能通过http访问 解决办法:(这里以阿里轻量应用服务器为 ...

  4. Linux运维实战之DNS(bind)服务器的安装与配置

    转自http://sweetpotato.blog.51cto.com/533893/1598225 上次博文我们讨论了DNS的基础,本次博文我们重点来看看如何配置一台DNS服务器. [本次博文的主要 ...

  5. Koa与Node.js开发实战(1)——Koa安装搭建(视频演示)

    学习架构: 由于Koa2已经支持ES6及更高版本,包括支持async方法,所以请读者保证Node.js版本在7.6.0以上.如果需要在低于7.6的版本中应用Koa的async方法,建议使用Babel ...

  6. 使用 WebSocket 客户端连接 MQTT 服务器

    简介 近年来随着 Web 前端的快速发展,浏览器新特性层出不穷,越来越多的应用可以在浏览器端或通过浏览器渲染引擎实现,Web 应用的即时通信方式 WebSocket 得到了广泛的应用. WebSock ...

  7. Tomcat系列之服务器的安装与配置以及各组件详解

    Tomcat系列之服务器的安装与配置以及各组件详解 大纲 一.前言 二.安装与配置Tomcat 三.Tomcat 目录的结构 四.Tomcat 配置文件 注,本文的测试的操作系统为CentOS 6.4 ...

  8. CentOS 6.3下Samba服务器的安装与配置方法(图文详解)

    这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下   一.简介  Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...

  9. 如何在一台服务器上安装两个mysql或者更多

    如何在一台服务器上安装两个mysql 1       前言 上篇写了在一台机器上源码编译安装一个mysql,那么如何在一台机器上源码编译安装两个mysql或者更多呢? 2       环境 mysql ...

随机推荐

  1. do put in ruby

    apikey: XO.apikeys.cms, data: { favoriteItems: [{ UserId: SaveToFavoriteVar.content.FavoriteItem.Use ...

  2. [daily][archlinux][fonts] 在linux下管理字体

    序: linux是社区搞出来, 商业应用也都是服务器场景.社区里又都是技术人员.字体又是细节.而且会英文早成了标配.所以没有很多社区以外的人力来搞字体这个毫无回报的东西. 结果很自然的,装linux桌 ...

  3. maven说

    maven打包命令:mvn assembly:assembly 打包成jar包需要修改配置把unpack改成false文件在: C:\Users\Administrator\.m2\repositor ...

  4. Codeigniter2.25部署Linux(php5.6)

    1).默认路由:修改system/core/Router.php 中第146行.如下图所示.ps:转换成小写我也是醉了...注释的代表是codeigniter作者写的,而上面的是我更改的 2).mod ...

  5. 白话学习MVC(九)View的呈现一

    一.概述 本节来看一下ASP.NET MVC[View的呈现]的内容,View的呈现是在Action执行之后进行,Action的执行生成一个ActionResult,[View的呈现]的功能就是:通过 ...

  6. JQuery实现click事件绑定与触发方法分析

    原生JS通过什么方法绑定click事件? 原生js有一下三种方法为DOM对象绑定click事件, 第一种,在html中添加 onclick属性,在此属性中添加要绑定的事件函数,如下, 这种方法为htm ...

  7. git制作增量包用于更新代码

    1 先找到指定的开始提交id,比如 05104e3475f63e1e49fbfcbd424a4a3801b95645 2 找到结束的提交id,比如 a0eb9bc6d4e1801062877fd435 ...

  8. Linux命令之md5sum

    1. 背景 在网络传输.设备之间转存.复制大文件等时,可能会出现传输前后数据不一致的情况.这种情况在网络这种相对更不稳定的环境中,容易出现.那么校验文件的完整性,也是势在必行的. md5sum命令用于 ...

  9. 从头开始一步一步实现EF6+Autofac+MVC5+Bootstarp极简前后台ajax表格展示及分页(二)前端修改、添加表格行点击弹出模态框

    在前一篇中,由于不懂jquery,前端做的太差了,今天做稍做修改,增加一个跳转到指定页面功能,表格行点击样式变化.并且在表格中加入bootstarp的按钮组,按钮点击后弹出模态框,须修改common, ...

  10. Robotium自动化测试框架实用教程(图)

    一.简介 Robotium是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击.长按.滑动等).查找和断言机制的API,能够对各 ...