php异步多线程swoole用法实例


Posted in PHP onNovember 14, 2014

本文实例讲述了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 相关文章推荐
php基础知识:类与对象(3) 构造函数和析构函数
Dec 13 PHP
php中支持多种编码的中文字符串截取函数!
Mar 20 PHP
PHP var_dump遍历对象属性的函数与应用代码
Jun 04 PHP
PHP面向对象概念
Nov 06 PHP
php中socket通信机制实例详解
Jan 03 PHP
PHP快速排序quicksort实例详解
Sep 28 PHP
Laravel构建即时应用的一种实现方法详解
Aug 31 PHP
Laravel使用消息队列需要注意的一些问题
Dec 13 PHP
PHP7导出Excel报ERR_EMPTY_RESPONSE解决方法
Apr 16 PHP
ThinkPHP3.2框架操作Redis的方法分析
May 05 PHP
php设计模式之状态模式实例分析【星际争霸游戏案例】
Mar 26 PHP
php解析非标准json、非规范json的方式实例
Dec 10 PHP
PHP判断数据库中的记录是否存在的方法
Nov 14 #PHP
PHP合并静态文件详解
Nov 14 #PHP
php判断类是否存在函数class_exists用法分析
Nov 14 #PHP
php中常量DIRECTORY_SEPARATOR用法深入分析
Nov 14 #PHP
php使用ob_start()实现图片存入变量的方法
Nov 14 #PHP
php使用date和strtotime函数输出指定日期的方法
Nov 14 #PHP
php获取url参数方法总结
Nov 13 #PHP
You might like
提升PHP执行速度全攻略(上)
2006/10/09 PHP
PHP中文汉字验证码
2007/04/08 PHP
ThinkPHP多表联合查询的常用方法
2020/03/24 PHP
php删除指定目录的方法
2015/04/03 PHP
php递归遍历删除文件的方法
2015/04/17 PHP
PHP安装threads多线程扩展基础教程
2015/11/17 PHP
mysqli扩展无法在PHP7下升级问题的解决
2019/09/10 PHP
JavaScript使用cookie
2007/02/02 Javascript
js事件(Event)知识整理
2012/10/11 Javascript
JQuery触发事件例如click
2013/09/11 Javascript
ext前台接收action传过来的json数据示例
2014/06/17 Javascript
一个不错的仿携程自定义数据下拉选择select
2014/09/01 Javascript
JavaScript中toString()方法的使用详解
2015/06/05 Javascript
使用jQuery.form.js/springmvc框架实现文件上传功能
2016/05/12 Javascript
移动端jQuery修正Web页面滑动时div问题的两则实例
2016/05/30 Javascript
JS前向后瞻正则表达式定义与用法示例
2016/12/27 Javascript
微信小程序 Canvas增强组件实例详解及源码分享
2017/01/04 Javascript
requirejs按需加载angularjs文件实例
2017/06/08 Javascript
bootstrap插件treeview实现全选父节点下所有子节点和反选功能
2017/07/21 Javascript
红黑树的插入详解及Javascript实现方法示例
2018/03/26 Javascript
解决微信小程序调用moveToLocation失效问题【超简单】
2019/04/12 Javascript
JS highcharts实现动态曲线代码示例
2020/10/16 Javascript
Python转码问题的解决方法
2008/10/07 Python
Python在for循环中更改list值的方法【推荐】
2018/08/17 Python
解决python明明pip安装成功却找不到包的问题
2019/08/28 Python
django 解决model中类写不到数据库中,数据库无此字段的问题
2020/05/20 Python
瑞典灯具和照明网上商店:Lamp24.se
2018/03/17 全球购物
北美领先的智能产品购物网站:Wellbots
2018/06/11 全球购物
合作协议书怎么写
2014/04/18 职场文书
梅花魂教学反思
2014/04/25 职场文书
中班上学期幼儿评语
2014/04/30 职场文书
2014国庆节主题活动方案:快乐的国庆节
2014/09/16 职场文书
学习党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
2014年银行员工工作总结
2014/11/12 职场文书
身份证丢失证明
2015/06/19 职场文书
2016年大学迎新工作总结
2015/10/14 职场文书