【php】Swoft的HttpServer启动及请求工作流程(一)--创建Server

Swoft的HttpServer启动及请求工作流程(一)--创建Server

马尔科夫尼可夫发布于 2020-12-09

本文基础环境:
swoftcli --version
【php】Swoft的HttpServer启动及请求工作流程(一)--创建Server

http-server目录:
/vendor/http-server/src

server创建及start入口:
/vendor/http-server/src/HttpServer.php

server创建代码:
$this->swooleServer = new SwooleHttpServer($this->host, $this->port, $this->mode, $this->type);
【php】Swoft的HttpServer启动及请求工作流程(一)--创建Server

先看swoft官网定义:
【php】Swoft的HttpServer启动及请求工作流程(一)--创建Server

问题来了:

既然swoft是协程框架,为何server是new的`\Swoole\Http\Server`而不是swoole官网demo中的`Swoole\Coroutine\Http\Server`?

要想解释这个问题,我们且先看接下来的代码$this->startSwoole():

此方法在父类`\Swoft\Server\Server`(`/vendor/server/src/Server.php`)中的定义如下:

【php】Swoft的HttpServer启动及请求工作流程(一)--创建Server
这里可以看出 swoft通过在server->start()前开启协程来实现协程服务器.

phpswooleswoft

阅读 128发布于 2020-12-09

本作品系原创,采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议

avatar

马尔科夫尼可夫

酷白发,小酒窝,主角标配的帅小伙~

7 声望

2 粉丝

0 条评论

得票时间

avatar

马尔科夫尼可夫

酷白发,小酒窝,主角标配的帅小伙~

7 声望

2 粉丝

宣传栏

本文基础环境:
swoftcli --version
【php】Swoft的HttpServer启动及请求工作流程(一)--创建Server

http-server目录:
/vendor/http-server/src

server创建及start入口:
/vendor/http-server/src/HttpServer.php

server创建代码:
$this->swooleServer = new SwooleHttpServer($this->host, $this->port, $this->mode, $this->type);
【php】Swoft的HttpServer启动及请求工作流程(一)--创建Server

先看swoft官网定义:
【php】Swoft的HttpServer启动及请求工作流程(一)--创建Server

问题来了:

既然swoft是协程框架,为何server是new的`\Swoole\Http\Server`而不是swoole官网demo中的`Swoole\Coroutine\Http\Server`?

要想解释这个问题,我们且先看接下来的代码$this->startSwoole():

此方法在父类`\Swoft\Server\Server`(`/vendor/server/src/Server.php`)中的定义如下:

【php】Swoft的HttpServer启动及请求工作流程(一)--创建Server
这里可以看出 swoft通过在server->start()前开启协程来实现协程服务器.

以上是 【php】Swoft的HttpServer启动及请求工作流程(一)--创建Server 的全部内容, 来源链接: utcz.com/a/106769.html

回到顶部