学堂 学堂 学堂公众号手机端

PHPfpm和swoole的定义和应用是什么,能否共存呢

lewis 1年前 (2024-03-17) 阅读数 5 #技术
在实际应用中,我们有时候会遇到“PHPfpm和swoole的定义和应用是什么,能否共存呢”这样的问题,我们该怎样来处理呢?下文给大家介绍了解决方法,希望这篇“PHPfpm和swoole的定义和应用是什么,能否共存呢”文章能帮助大家解决问题。





Swoole:面向生产环境的 PHP 异步网络通信引擎使PHP开发人员可以编写高性能的异步并发 TCP、UDP、Unix Socket、HTTP,WebSocket 服务。

Swoole 可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。

使用 PHP + Swoole 作为网络通信框架,可以使企业 IT 研发团队的效率大大提升,更加专注于开发创新产品。

php-fpm长连接

在php-fpm中维持TCP长连接主要借助swoole扩展提供的SWOOLE_KEEP选项,客户端设置此选项后,在请求结束时不会关闭连接,新的请求到来后可以复用TCP连接。

另外底层内置了长连接检测的能力。

在执行$client->connect()自动检测连接是否可用,如果复用的连接已经失效,底层会重新创建一个新的TCP长连接。

在执行$client->connect()自动清理垃圾数据,避免上一次客户端超时残留的数据导致服务异常

$socket = new \swoole_client(SWOOLE_SOCK_TCP | SWOOLE_KEEP, WOOLE_SOCK_SYNC);
$socket->set(array(
    'open_length_check' => true,
    'package_max_length' => $this->packet_maxlen,
    'package_length_type' => 'N',
    'package_body_offset' => RPCServer::HEADER_SIZE,
    'package_length_offset' => 0,
));

这篇关于“PHPfpm和swoole的定义和应用是什么,能否共存呢”的文章就介绍到这了,更多相关的内容,欢迎关注博信,小编将为大家输出更多高质量的实用文章!
版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门