php异步多线程swoole用法实例

Posted Raylove

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php异步多线程swoole用法实例相关的知识,希望对你有一定的参考价值。

摘要:本文实例讲述了php异步多线程swoole用法。分享给大家供大家参考。具体分析如下:swoole重新定义PHP语言的高性能网络通信框架,提供了PHP语言的异步多线程服务,下面的实例就可以证实这一功能。一般来说,Swoole提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步mysql,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询.swoole

本文实例讲述了php异步多线程swoole用法。分享给大家供大家参考。具体分析如下:

swoole重新定义PHP语言的高性能网络通信框架,提供了PHP语言的异步多线程服务,下面的实例就可以证实这一功能。

一般来说,Swoole提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询.

swoole以前听过, 拿来做游戏服务器简直是神器…今天稍微的感受了一下, 在 ubuntu 下搭建了环境, 测试了一下

具体测试代码如下:

<?php

class page extends Controller

{

    function index()

    {

        $data = createModel(‘UserInfo‘)->get(12)->get();

        $this->swoole->tpl->assign(‘data‘,$data);

        $html = $this->swoole->tpl->fetch(‘test.html‘);

        $time = $this->showTime();

        return $html.$time;

    }

}

shell

ab -c 100 -n 1000 -k http://127.0.0.1/index/

  

Requests per second

Time per request (mean)

Time per request (mean, across all concurrent requests)

  

运行方式:

Swoole EventTCP Swoole SelectTCP Swoole BlockTCP Apache/Prefork

单进程

571.70 [#/sec] 174.916 [ms] 1.749 [ms] 659.01 [#/sec]
151.743 [ms]
1.517 [ms]
561.24 [#/sec]
178.178 [ms]
1.782
80.57
1241.083 [ms]
12.411 [ms]

4进程

1153.63 [#/sec]
86.683 [ms]
0.867 [ms]
1010.08 [#/sec]
99.002 [ms]
0.990 [ms]
1094.58 [#/sec]
91.359 [ms]
0.914 [ms]

更多学习内容请访问:

腾讯T3-T4标准精品PHP架构师教程目录大全,只要你看完保证薪资上升一个台阶(持续更新)

以上是关于php异步多线程swoole用法实例的主要内容,如果未能解决你的问题,请参考以下文章

PHP使用Swoole搭建一个异步服务

php代码在WSL系统上运行swoole 扩展.还需要安装搭建服务器吗?

Linux 安装php扩展 swoole

异步任务推送的实践

swoole的http服务

框架中集成swoole扩展怎么使用