阅读更多

5顶
0踩

编程语言

关于Swoole

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

 

Swoolev1.6的主要改进

  1. 重写UDPServer代码,实现支持多端口的高性能UDP Server
  2. 增加swoole_connection_list/swoole_connection_info两个新接口,用于在worker进程内高效地遍历所有TCP连接,获取TCP连接的相关信息
  3. Worker进程可选IPC方式,通过configure --enable-msgqueue启用消息队列作为IPC方式
  4. swoole_server_send/swoole_server_close不再需要传入from_id参数
  5. 提供对tcp_keepalive的支持
  6. 增加日志模块,记录运行时的警告和错误信息
  7. 去掉耗时的clock_gettime调用

GitHub: https://github.com/matyhtf/swoole
文档地址: http://www4swoole.sinaapp.com/wiki.php

 

Swoole的性能压测报告

swoole性能接近nginx/golang。与node.js的对比中由于node.js本身是单线程的,无法利用多核.Node.js程序处理能力仅能达到swoole的1/3水平。


链接:http://www4swoole.sinaapp.com/wiki/main/63

 

基于Swoole扩展开发的开源项目

1、zphp一个极轻的的,专用于游戏(社交,网页,移动)的服务器端开发框架.提供高性能实时通信方案。zphp使用swoole作为底层网络通信的框架。

https://github.com/shenzhe/zphp

2、swoole_framework是基于swoole扩展,开发的PHP WebServer和框架,可以是PHP对象持久化,避免每次请求带来的对象创建/销毁消耗,性能非常好。
https://github.com/matyhtf/swoole_framework

 

5
0
评论 共 2 条 请登录后发表评论
2 楼 shuhen2011 2013-11-29 09:59
"由于node.js本身是单线程的,无法利用多核..."
1 楼 ooff 2013-10-27 10:39
单线程跟多核没有冲突!nodejs一样可以使用多核

发表评论

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

相关推荐

  • 文件系统之格式化与挂载

    VFS内部则通过一系列高效的管理机制,比如inode cache, dentry cache 以及文件系统的预读等技术,使得底层文件系统不需沉溺到复杂的内核操作,即可获得高性能; 此外VFS把一些复杂的操作尽量抽象到VFS内部...

  • PHP 项目 - 收集/实践

    1.应该场景 实践学习, 知识储备, 提高技术水平. 2.学习/操作 1.laravel-shttps://github.... Star 2.5kWatch 143Fork 308中文 用于快速集成Swoole到Laravel,开箱即用。特点: 集成 L...

  • PHP面试题(一)

    一:php部分 用PHP实现一个双向队列(使用deque) deque,全名double-ended queue,是一种具有队列和栈的性质的数据结构。双端队列中的元素可以从两端弹出,其限定插入和删除操作在表的两端进行。双向队列(双端队列...

  • 2016PHP开发者大会

    Rasmus Lerdorf——《Speeding up the Web with PHP 7》 PHP 7 is here. It brings drastic performance and efficiency improvements to the point that it will reshape the data center footprint of PHP sit...

  • shell实例手册

    shell实例手册 1文件{ touch file # 创建空白文件 rm -rf 目录名 # 不提示删除非空目录(-r:递归删除 -f强制) dos2unix # windows文本转linux文本 unix2dos # linux文本转windows文本 enca filename ...

  • Swoft 2.x 微服务基础(Consul、RPC 服务发现、限流与熔断器)

    本篇概要:1....1.1 Consul 概况;...1.3 健康检查;1.4 服务发现;...1.6 封装 client 类、调用 http api;2. RPC 和服务发现;2.1 RPC 服务的基本配置;2.1.1 基本概念;2.1.2 基本配置;2.2 创建 RPC 服...

  • grpc

    正是由于分布式事务存在很严重的性能问题,大部分高并发服务都在避免使用,往往通过其他途径来解决数据一致性问题。 2.使用消息队列来避免分布式事务 如果仔细观察生活的话,生活的很多场景已经给了我们提示。...

  • 组态王仿真学习案例:石灰石断烧系统详解,实时历史曲线记录、报表分析与报警管理一网打尽,入门到进阶全功能展示

    内容概要:本文详细介绍了利用组态王进行石灰石煅烧系统的仿真开发,涵盖实时曲线绘制、报警系统配置、报表生成功能等多个方面。文章从实际案例出发,通过具体的代码片段和操作步骤,讲解了如何实现温度PID控制、设备联锁、能源统计等功能。同时,作者分享了许多实践经验,如解决曲线不刷新问题、优化报警逻辑、提高报表生成效率等,帮助读者快速掌握组态王的核心技术和应用场景。 适合人群:对工业自动化感兴趣的初学者以及希望深入了解组态王使用的工程师。 使用场景及目标:适用于需要构建工业控制系统仿真模型的学习者或开发者,旨在通过实例演练提升对组态王的理解和运用能力,最终能够独立完成类似项目的开发。 其他说明:文中提供了丰富的代码示例和技术细节,有助于读者更好地理解和实践。此外,还特别强调了一些常见的错误和注意事项,如控件命名规范、数据源绑定规则等,确保项目顺利实施。

  • CAD绘制圆形洞室展示图的初步实现.docx

    CAD绘制圆形洞室展示图的初步实现.docx

  • 基于下垂虚拟同步机的三电平双机离网并联仿真模型:C语言算法,性能优越,适用于储能逆变器和UPS产品,环流小,动态响应良好。

    内容概要:本文详细介绍了基于C语言实现的三电平双机离网并联虚拟同步机控制算法。该算法主要用于解决储能逆变器和UPS系统中双机并联运行时遇到的问题,如功率分配不均、环流超标和动态响应不佳。文中展示了具体的下垂控制、环流抑制、动态响应优化以及中点电位平衡等核心技术的实现方式。此外,还讨论了如何通过自适应虚拟阻抗、状态观测器和查表法等手段提高系统的稳定性和效率。最终,该算法在实际项目中表现出色,实现了高效的功率分配和稳定的动态响应。 适合人群:从事电力电子、储能系统和UPS系统开发的技术人员,尤其是对C语言编程和控制算法有一定了解的研发人员。 使用场景及目标:适用于需要高效、稳定双机并联运行的储能逆变器和UPS系统的设计与开发。主要目标是解决双机并联时的功率分配不均、环流超标和动态响应慢等问题,确保系统在各种工况下的稳定性和可靠性。 其他说明:本文不仅提供了详细的代码实现,还分享了许多实用的调试技巧和实践经验,有助于读者更好地理解和应用这些技术。

  • 方波信号发生器电路仿真

    方波信号发生器电路仿真,基于LM741运算放大器的方波信号发生器电路仿真设计及实现

  • 2025年电子商务四级培训计划.doc

    2025年电子商务四级培训计划.doc

  • 2023年高中信息技术Excel知识点整理.docx

    2023年高中信息技术Excel知识点整理.docx

  • FX5UPLC以太网通讯实例:SOCKET通讯、SLMP协议通讯、JE-C伺服电机控制及Modbus通讯等真实验证程序套

    内容概要:本文详细介绍了三菱FX5U PLC在工业自动化领域的以太网通讯实战经验,涵盖多种常见通讯方式的具体实现方法。主要内容包括:两台PLC之间的Socket通讯,通过C#上位机使用SLMP协议读取PLC寄存器,JE-C伺服电机的以太网控制,以及Modbus RTU和TCP的应用。每种通讯方式均提供了具体的代码示例和调试技巧,确保读者能够快速理解和应用。此外,还特别强调了常见的避坑指南,帮助解决实际操作中可能出现的问题。 适合人群:从事工业自动化、PLC编程及相关领域的工程师和技术人员,特别是那些希望深入了解三菱FX5U PLC以太网通讯机制的人群。 使用场景及目标:适用于需要进行PLC间通讯、PLC与上位机通讯、伺服电机控制以及Modbus协议应用的实际工程项目。目标是提高通讯效率,减少调试时间和错误发生率。 其他说明:文中提供的代码均为经过产线验证的真实程序,可以直接应用于实际项目中。同时,作者分享了许多宝贵的实践经验,有助于读者更好地掌握相关技能并避免常见错误。

  • r_code_and_sample_data_for_drawing_apa_diagram.zip

    计算融合图像(IDL 和 Python 代码)全方位性能评估(APA)指标及绘制 APA 图表的 R 代码

  • 2023年软考信息处理技术员考试历年模拟真题三.docx

    2023年软考信息处理技术员考试历年模拟真题三.docx

  • 社交聊天即时通讯App开发:双端原生、朋友圈、三方通讯云对接及支付功能集成

    内容概要:本文详细介绍了社交聊天即时通讯App的开发要点,涵盖Android和iOS双端原生开发、朋友圈功能、三方云通讯以及支付功能对接。重点讨论了消息系统的优化、朋友圈图片九宫格布局、支付接口的安全性和性能优化等方面的内容。通过具体代码示例展示了如何处理消息发送、接收、状态管理、图片加载、支付回调等问题,并分享了一些实用的经验和技巧。 适合人群:具备一定移动开发经验的开发者,尤其是正在从事或计划从事社交类App开发的技术人员。 使用场景及目标:帮助开发者理解和掌握社交App开发的关键技术和最佳实践,确保消息传输稳定、朋友圈功能流畅、支付安全可靠。适用于希望提高社交App用户体验和技术架构稳健性的开发团队。 其他说明:文中提供了大量实战经验和代码片段,强调了跨平台一致性、性能优化和用户体验的重要性。同时提醒开发者关注平台特异性问题,如iOS和Android之间的差异,以及支付接口的安全校验等。

  • 信捷原创程序:4个伺服轴的PLC与HMI控制方案

    内容概要:本文详细介绍了信捷XC5-48T PLC和TG765 HMI在三号车间设备改造项目中的应用。重点讨论了四轴伺服控制系统的编程架构、状态机设计、HMI界面设计以及调试工具的使用。文章强调了多轴联动时序控制的重要性,展示了如何通过状态机和互锁机制确保系统的稳定性和可靠性。同时,HMI设计采用了分层式布局和防呆设计,提高了操作的安全性和便捷性。此外,文中还提到了一些实用的调试技巧和注释规范,为后续维护提供了便利。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是对PLC编程和HMI设计有一定基础的人群。 使用场景及目标:适用于需要进行多轴伺服控制系统设计和调试的工程项目。目标是帮助工程师理解和掌握信捷XC5-48T PLC和TG765 HMI的应用方法,提高系统的可靠性和易用性。 其他说明:文章不仅提供了具体的编程示例,还分享了许多实践经验,如状态机设计、互锁机制、防呆设计等,有助于读者更好地理解和应用相关技术。

  • 自定义扩展,简化策略类,方便使用

    自定义扩展,简化策略类,方便使用

  • 2025年全国计算机软件专业高级程序员级试题.docx

    2025年全国计算机软件专业高级程序员级试题.docx

Global site tag (gtag.js) - Google Analytics