Swoole:面向生产环境的 PHP 异步网络通信引擎使PHP开发人员可以编写高性能的异步并发 TCP、UDP、Unix Socket、HTTP,WebSocket 服务。
Swoole 可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。
使用 PHP + Swoole 作为网络通信框架,可以使企业 IT 研发团队的效率大大提升,更加专注于开发创新产品。 (推荐学习: swoole视频教程)
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可以共存么的详细内容。更多信息请关注PHP中文网其他相关文章!