美文网首页
workerman 一 环境搭建

workerman 一 环境搭建

作者: 蛐蛐儿阳 | 来源:发表于2020-03-13 15:30 被阅读0次

一,前言
workerman官方文档 http://doc.workerman.net/

workmen要用到php环境, 我本地两个php5.6和7.1, docker里有很多。
socket, 协议。我们启动他要 php ***.php start。 如果本地的话,很简单了,扩展我都装过了,如果用docker, 我得在启一个容器。
嗯,用docker, 尝试下这种没用过的姿势。

启docker

docker run -itd -p 2001:2001 -v  /Users/guanliyang/php:/usr/share/nginx/html --name socken-php7.4 77cd7cd803b2

进入docker看看是否符合环境
curl -Ss http://www.workerman.net/check.php | php
发现pcntl没有安装, 安装之
docker-php-ext-install pcntl
再试下通过了。这种安装扩展太方便了。

准备一个测试代码

<?php
use Workerman\Worker;
require_once __DIR__ . '/Workerman/Autoloader.php';

// 创建一个Worker监听2345端口,使用http协议通讯
$http_worker = new Worker("http://0.0.0.0:2001");

// 启动4个进程对外提供服务
$http_worker->count = 4;

// 接收到浏览器发送的数据时回复hello world给浏览器
$http_worker->onMessage = function($connection, $data)
{
    // 向浏览器发送hello world
    $connection->send('hello world');
};

// 运行worker
Worker::runAll();

注意下这里的端口,和开启容器的端口是一样的。 mac机器上ping容器的ip是不通的。其实大多数情况下也没必要,由于端口映射出来了,直接http://localhost:2001/
就能访问到hello word。
至此,说明环境已搭建完毕。
总结一下:
\color{red}{ 一, 用docker 玩儿 workerman 时,你想开几个进程,docker run 的时候要提前吧端口都映射出来 }
\color{red}{ 二, 每次要去容器里php start.php start , 也可设计成启动脚本 }

相关文章

网友评论

      本文标题:workerman 一 环境搭建

      本文链接:https://www.haomeiwen.com/subject/xexlshtx.html