workerman安装
1、workerman安装
workerman是php的一个socket框架,简化了socket编程,已经为很多企业所用,今天在centos的ngix+php下安装了workerman,过程记录如下。
官网上给的教程

但是我已经安装了php环境,所以跳过上面的1,2,3,4步骤,直接下载workerman的zip包,进行第5步安装。
进入workerman的目录进行安装如下。提示错误
[root@localhost server]# ls
mysql nginx-1.4.4 phpredis workerman
mysql-5.6.21 php redis-2.8.19
nginx php-5.5.7 redis-2.8.19.tar.gz
[root@localhost server]# cd workerman/
[root@localhost workerman]# cd workerman/
[root@localhost workerman]# ls
bin Common conf Core logs
[root@localhost workerman]# cd bin
[root@localhost bin]# ls
workermand
[root@localhost bin]# ./workermand start
Workerman is starting ...
----------------------- EXTENSION ------------------------------
* pcntl [NOT SUPORT BUT REQUIRED] You have to enable pcntl Workerman start fail
缺少扩展pcntl,这个扩展时workerman必须的,这个扩展时php包里有的,但是我在编译php的时候没有--enable-pcntl,在php的源码包里果然找到了这个扩展源码包,下面就是加入这个扩展。
加入这个扩展后,重启php-fpm,nginx,再次开启workerman
[root@localhost bin]# ./workermand start
Workerman is starting ...
----------------------- EXTENSION ------------------------------
* sysvshm [NOT SUPORT]
* sysvmsg [NOT SUPORT]
* libevent [NOT SUPORT]
------------------------ WORKERS -------------------------------
user worker listen processes status
root BusinessWorker none 32 [OK]
root Gateway tcp://0.0.0.0:8480 4 [OK]
root StatisticProvider tcp://0.0.0.0:55858 1 [OK]
root StatisticWeb tcp://0.0.0.0:55757 1 [OK]
root StatisticWorker udp://0.0.0.0:55656 1 [OK]
----------------------------------------------------------------
Workerman start success ...
workerman安装成功。
2、workerman分离
虽然workerman可以作为Webserver的替代Nginx PHP-FPM等架构,并且性能也比Nginx PHP-FPM高,但是我们不推荐这样做,因为PHP的WebServer市场上已经很成熟了,workerman不会再去做重复的事情。反而workerman把精力花在传统WebServer无法胜任的角色上,例如非HTTP协议的应用、TCP长链接应用、UDP应用、IM、游戏服务器、物联网等。
下载一个基于workerman的聊天框架https://github.com/walkor/workerman-chat,文件结构如下

从workerman的配置文件可以看到,只要将项目放在applications文件夹下都可以运行,因为workerman包含了其配置文件。
用户访问的是Web目录,如果Web目录放在这里,web服务器采取的是workerman的内置的服务器,我想将这个Web分离出来,用我的nginx服务器,workerman只是做socket的解析,如何来实现呢?其实很简单
我的机器上的lnmp可以访问的路径是/alidata/www/yii2newstest/web,我只要上面的Web目录放在这个/alidata/www/yii2newstest/web中,其他的不用做任何的更改,就可以实现访问了。
workerman安装的更多相关文章
- ThinkPHP5通过composer安装Workerman安装失败问题(避坑指南)
$ composer require topthink/think-workerUsing version ^2.0 for topthink/think-worker./composer.json ...
- ThinkPHP5通过composer安装Workerman安装失败问题
报错: topthink/think-worker v3.0.2 requires topthink/framework ^6 https://blog.csdn.net/Douz_lungfish/ ...
- workerman 安装event 扩展
2018年7月31日10:07:47 一些小技巧 命令行直接运行PHP代码 php -r "phpinfo();" 交互模式运行PHP php -a PHP脚本作为shell脚本运 ...
- Workerman安装流程
第一步检测安装环境 curl -Ss http://www.workerman.net/check.php | php 操作结果显示 报错了 需要找到php.ini文件 解决办法如下: 打开 php ...
- Linux系统安装workerman,启动wss 服务
安装workerman其实很简单,只要会简单的linux口令就可以搞定, 这里我给大家演示一下如何安装workerman 进入终端的过程就不用演示了吧... 输入root及密码进入终端后找到站点根目录 ...
- WebSocket实战之————Workerman服务器的安装启动
安装php apt-get install php5-cli root@iZ23b64pe35Z:/home/www# php -v PHP 5.5.9-1ubuntu4.20 (cli) (buil ...
- workerman使用编译安装workerman的php环境
提示 workerman只是一个代码包,如果php环境满足要求,下载后即可使用,实际上没有安装过程. workerman对php环境的要求是: 1.php>=5.3.3,可以运行命令php-v查 ...
- linux下TP5安装好Workerman 报错:Class 'think\worker\Server' not found
今天把功能放到服务器,本地测试正常,上传到服务器上报错Class 'think\worker\Server' not found 首先想到的是Windows和Linux下大小写的问题,查看了代码,并没 ...
- composer安装Workerman报错:Installation failed, reverting ./composer.json to its original content.
今天想在TP5上安装workerman,实现一个后台消息提醒功能. 第一步就卡住了,根据手册里说的首先通过composer安装 $ composer require topthink/think-wo ...
随机推荐
- 我这个IOS渣渣又来写随笔了
我这个渣渣又来写了,哎,今天看了一篇大神面试别人的文章,感觉还有很遥远的路要走,不过没关系,还年轻,才入ios两个月,我相信自己的学习能力,加油! 博客园会是我成长的见证!
- Yii2版本号新特性简单介绍
Yii2 Beta版本号在今年4月份公布.眼下正在改动问题和完好文档中. Yii2要求PHP版本号不低于5.4,主要有例如以下改进: 1)支持PHP框架间协作组制定的PSR-4标准,这简化了文件夹并提 ...
- Python+Django+SAE系列教程17-----authauth (认证与授权)系统1
通过session,我们能够在多次浏览器请求中保持数据,接下来的部分就是用session来处理用户登录了. 当然,不能仅凭用户的一面之词,我们就相信,所以我们须要认证. 当然了,Django 也提供了 ...
- [GIF] GIF Loop Coder - Introduction
Introducing the program, GIF Loop Coder, which allows you to make looping animated gifs (and other t ...
- MHA工作原理
http://my.oschina.net/u/1440383/blog/313798?fromerr=Tvth3ODF
- ognl表达式和s标签
1.ognl表达式: Ognl上下文对象:(他是一个可以存储数据的空间结构,而且在这个结构中包含之前 jsp中的作用域对象) (放在 value stack控件),当前访问的Action这个上下文对象 ...
- hibernate简单应用
Hibernate 第二章 核心API 和CURD实现 核心API介绍 单表操作方法 查询hql语句 1.认识hibernate 核心思想ORM:实现数据库中的文件一一映射为java中的实体类. 使用 ...
- Spring、struts、webwork2三者MVC的比较
http://blog.sina.com.cn/s/blog_4a69fa43010005il.html 在web应用方面,Spring有独立的MVC实现,与struts和webwork2相比毫不逊色 ...
- html Js跨域提交数据方法,跨域提交数据后台获取不到数据
MVC实现方式:(后台获取不到方法请参考下面js) [ActionAllowOrigin][HttpPost]public JsonResult Cooperation() { return json ...
- C# Mutex对象的使用
C# Mutex对象的使用 C#语言有很多值得学习的地方,这里我们主要介绍C# Mutex对象,包括介绍控制好多个线程相互之间的联系等方面. 如何控制好多个线程相互之间的联系,不产生冲突和重复,这需要 ...