Linux系统安装workerman,启动wss 服务

安装workerman其实很简单,只要会简单的linux口令就可以搞定,

这里我给大家演示一下如何安装workerman 进入终端的过程就不用演示了吧...

输入root及密码进入终端后找到站点根目录 先使用官方自带的脚本测试下服务器的PHP环境是否满足WorkerMan允许要求

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

如图所示,本机的posix扩展没有安装,那我们使用以下命令进行安装pcntl和posix扩展。

yum install php-process

扩展安装完成后,再次检测PHP环境,显示一切正常。

官方提示为了支持更大的并发连接数,建议安装event扩展或者libevent扩展(二者作用相同,二选一即可),我们进行libevent扩展安装如下 

扩展安装成功后,一切准备就绪,通过wget口令下载WorkerMan源码包

wget http://www.workerman.net/download/workermanzip

下载完成后就可以看到下图中的workermanzip包,执行 unzip 进行解压

 

解压成功,将Workerman-master 重命名   如图

mv Workerman-master Workerman

创建test.php文件代码如下

<?php 
use WorkermanWorker; 
require_once __DIR__ . '/Workerman/Autoloader.php'; 
// 创建一个Worker监听2345端口,使用http协议通讯 
$http_worker = new Worker("http://0.0.0.0:2345"); 
// 启动4个进程对外提供服务 
$http_worker->count = 4; 
// 接收到浏览器发送的数据时回复hello world给浏览器 
$http_worker->onMessage = function($connection, $data)
{ 
    // 向浏览器发送hello world 
    $connection->send('hello world'); 
}; 
Worker::runAll();

执行 php test.php start 看到如下图表示workerman安装成功叻...

...

用守护进程模式启动可以后台运行 workerman  任务:

php start.php start -d  (-d 守护模式启动)

报错可能原因:

php加载sockets 和libevent模块的顺序导致

解决方法:

vim /etc/php.d/libevent.ini

注释掉:extension = libevent.so

vim /etc/php.d/sockets.ini

注释掉:extentsion = sockets.so

然后在php.ini中添加这两个扩展的引用

vim /etc/php.ini

extension = sockets.so
extension = libevent.so

将上面内容添加到php.ini中,注意添加顺序。

原文地址:https://www.cnblogs.com/beyang/p/9631845.html