swoole服务只起一个进程吗

(*-*)浩
(*-*)浩 原创
2019-12-16 11:59:41 1605浏览

Swoole 启动一个服务,开启了哪些进程和线程?

serv.php (推荐学习: swoole视频教程

<?php

class Server
{
    private $serv;

    public function __construct() {
        $this->serv = new swoole_server("0.0.0.0", 9502);
        $this->serv->set([
            'worker_num'      => 3,
            'task_worker_num' => 3,
        ]);
        $this->serv->on('Start', function ($serv) {
            echo "SWOOLE:".SWOOLE_VERSION . " 服务已启动".PHP_EOL;
            echo "SWOOLE_CPU_NUM:".swoole_cpu_num().PHP_EOL;
        });
        $this->serv->on('Receive', function ($serv, $fd, $from_id, $data) { });
        $this->serv->on('Task', function ($serv, $task) { });
        $this->serv->on('Finish', function ($serv, $task_id, $data) {});
        $this->serv->start();
    }
}
$server = new Server();

上面的代码简单说下,创建了一个 TCP 服务器,启动了 3 个 worker 进程, 3 个 task 进程,因为启用了 task 功能,所以必须注册 onTask、onFinish 2 个事件的回调函数。

咱们运行一下:

swoole-31.png

使用 ps 查看下:

swoole-32.png

以上就是swoole服务只起一个进程吗的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
上一条:swoole端口是什么 下一条:swoole门槛高吗