php异步多线程swoole用法实例

yipeiwu_com7年前PHP代码库

本文实例讲述了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]

apache下居然也有这么好的效率, 留个爪子.以后好用。

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

php实现httpRequest的方法

本文实例讲述了php实现httpRequest的方法。分享给大家供大家参考。具体如下: 想从学校图书馆的网站上抓取数据处理之后在返回给浏览器,试了不少方法。首先试了http_reques...

php面向对象之反射功能与用法分析

本文实例讲述了php面向对象之反射功能与用法。分享给大家供大家参考,具体如下: 个人对反射定义的理解: 首先得说说什么叫反射。对于一个新手来说,反射这个概念常常给人一种似懂非懂的 感觉,...

PHP pathinfo()获得文件的路径、名称等信息说明

PHP pathinfo() 函数 定义和用法 pathinfo() 函数以数组或字符串的形式返回关于文件路径的信息。 返回的数组元素如下: [dirname]:返回文件路径中的目录部分...

PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)

本文实例讲述了PHP正则表达式基本用法。分享给大家供大家参考,具体如下: Demo1.php <?php //尝试着写第一个正则表达式 //第一个参数,表示模式(就...

Java中final关键字详解

Java中final关键字详解

谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字。另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关...