阅读更多

2顶
0踩

开源软件

原创新闻 PHP异步高并发扩展Swoole 1.6.10发布

2014-01-26 18:34 by 见习记者 shenzhe 评论(0) 有48324人浏览
php c

swoole是一个php版本的异步、高并发扩展,是国人被php官方pecl包收录的力作之一。

 

GitHub地址:https://github.com/matyhtf/swoole
官网:http://www.swoole.com

pecl地址: http://pecl.php.net/package/swoole


swoole项目在春节前发布了1.6.10版本。

 

内核更新:

 

  • Enabled by default async_mysql   (5.4版本默认开启async_mysql特性)
  • UDP send no require from_id       (udp 发送不包含 from_id)
  • Add last_time and connect_time to tcp connection_info   (连结信息添加属性:连接时间和最后消息到达时间)
  • Add tcp heartbeat mechanism      (内置tcp心跳检测模块)
  • rebuild data_buffer                    (重构了data_buffer)

client模块:

 

  • swoole_client on::Receive and on::Close no need to call recv/close  (Receive和Close不需要相应的回调)

php方法变更:

 

  • add heartbeart()方法 (swoole_server_heartbeart() or $serv->heartbeat())(手动进行心跳检测)


配置变更:

 

  • add heartbeat_idle_time   (心跳最大空闲时间)
  • add heartbeat_check_interval (心跳定时检测时间)

Swoole介绍:


Swoole是一个PHP的C扩展,可用来开发PHP的高性能高并发TCP/UDP Server。Swoole的网络IO部分基于多线程的epoll/kqueue事件循环,是全异步非阻塞的。 业务逻辑部分既可以像node.js一样全异步回调执行,也可以多进程同步阻塞方式来运行。这样既保证了Server能够应对高并发和大量TCP连接。又保证业务代码仍然可以简单的编写。

 

server 示例代码:

<?php //server.php
$serv = new swoole_server("0.0.0.0", 9501);
$serv->set(array(
    'worker_num' => 2,
 ));
$serv->on('connect', function ($serv, $fd){
    echo "Client:Connect.\n";
});
$serv->on('receive', function ($serv, $fd, $from_id, $data) {
    $serv->send($fd, 'Swoole: '.$data);
    $serv->close($fd);
});
$serv->on('close', function ($serv, $fd) {
    echo "Client: Close.\n";
});
$serv->start();
?>
php server.php         //运行
telnet 127.0.0.1 9501  //连接server
hello  (发送)
Swoole: hello (接收)

  

2
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • ww中配置validation时碰到个奇怪的问题。

    在我为TestAction添加validation功能时,生成 TestAction-validation.xml,系统在处理该xml时,总是试图去http://www.opensymphony.com/xwork/寻找xwork-validator-1.0.2.dtd文件。 也就是第一句: [code][/code...

  • JavaEE知识体系

    1 1.文件上传下载 1.1 文件上传 1.1.1 文件上传的作用 例如网络硬盘!就是用来上传下载文件的。 在智联招聘上填写一个完整的简历还需要上传照片呢。 1.1.2 文件上传对页面的要求 ...4.在表单中添加file表

  • BERT引发的深度学习2

    ... 接下来介绍一种非常重要的神经网络——卷积神经网络。这种神经网络在计算机视觉领域取得了重大的成功,而且在自然语言处理等其它领域也有很好的应用。深度学习受到大家的关注很大一个原因就是Alex等人...

  • 高负载高并发网站架构分析

    由于自己正在做一个高性能大用户量的论坛程序,对高性能高并发服务器架构比较感兴趣,于是在网上收集了不少这方面的资料和大家分享。希望能和大家交流  msn: defender_ios@hotmail.com  ——————————...

  • JAVA开发全集

     //6���根据Qname创建相应的节点(QName就是一个带有命名空间的节点)���������ռ��)  QName qname = new QName(" http://java.zttc.edu.cn/webservice ",   "add","ns");// ...

  • [转]高负载并发网站架构分析

    由于自己正在做一个高性能大用户量的论坛程序,对高性能高并发服务器架构比较感兴趣,于是在网上收集了不少这方面的资料和大家分享。希望能和大家交流 msn: defender_ios@hotmail.com ——————————————...

  • 我的评论

    http://www.blogjava.net/iamtin/MyComments.html共2页: 1 2 下一页 re: 乱弹之性能调优,程序设计和技术管理[未登录] Tin 2008-03-18 07:37 我觉得这也真是乱弹。...其中把性能问题放到语言和OO设计上,我觉得是

  • 心得

    1.MYSQL的问题,HIBERNATE+SPRING 不可以用....2.struts里action type =delegatingactionProxy没写3.struts里的plugIn 改写在web.xml里这样可以把server action 里的错误信息可以显示出来..4. nullPoint空指针问题...

  • rockyou.txt

    rockyou

  • ASP+ACCESS网上人才信息管理系统(源代码+论文)【ASP】.zip

    ASP+ACCESS网上人才信息管理系统(源代码+论文)【ASP】

  • 河北金融学院经济大数据课设2024年 软科学校爬虫课设

    河北金融学院经济大数据课设2024年 软科学校爬虫课设

  • widgetsnbextension-4.0.0b0-py3-none-any.whl

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

  • 协同过滤服务+源代码+文档说明

    - 不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------

  • 基于ASP公交在线查询系统设计(源代码+论文)【ASP】.zip

    基于ASP公交在线查询系统设计(源代码+论文)【ASP】

  • ASP.NET某中学图书馆系统的设计与实现(源代码+论文)【ASP】.zip

    ASP.NET某中学图书馆系统的设计与实现(源代码+论文)【ASP】

  • ASP.NET猜数游戏的设计与开发(源代码+论文)【ASP】.zip

    ASP.NET猜数游戏的设计与开发(源代码+论文)【ASP】

  • asp.net师电子化信息库的设计与实现(源代码+论文)【ASP】.zip

    asp.net师电子化信息库的设计与实现(源代码+论文)【ASP】

  • 2023-04-06-项目笔记 - 第一百五十六阶段 - 4.4.2.154全局变量的作用域-154 -2024.06.06

    2023-04-06-项目笔记-第一百五十六阶段-课前小分享_小分享1.坚持提交gitee 小分享2.作业中提交代码 小分享3.写代码注意代码风格 4.3.1变量的使用 4.4变量的作用域与生命周期 4.4.1局部变量的作用域 4.4.2全局变量的作用域 4.4.2.1全局变量的作用域_1 4.4.2.154全局变量的作用域_154- 2024-06-06

  • 哈尔滨工程大学833社会研究方法2020考研专业课初试大纲.pdf

    哈尔滨工程大学考研初试大纲

  • grpcio-1.27.2-cp36-cp36m-win_amd64.whl

    Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

Global site tag (gtag.js) - Google Analytics