专业汉语词典知识平台,分享汉字词语知识、历史文学知识解答!

励北网
励北网

Workerman 是什么

来源:小易整编  作者:小易  发布时间:2023-08-17 09:57
摘要:Workerman是一款开源高性能异步PHPsocket即时通讯框架。支持高并发,超高稳定性,被广泛的用于手机app、移动通讯,微信小程序,手游服务端、网络游戏、PHP聊天室、硬件通讯、智能家居、车联网、物联网等领域的开发。Worker...

Workerman 是一款开源高性能异步PHP socket即时通讯框架。支持高并发,超高稳定性,被广泛的用于手机app、移动通讯,微信小程序,手游服务端、网络游戏、PHP聊天室、硬件通讯、智能家居、车联网、物联网等领域的开发。

Workerman 是什么

Workerman 是一款开源高性能异步 PHP socket 即时通讯框架。支持高并发,超高稳定性,被广泛的用于手机 app、移动通讯,微信小程序,手游服务端、网络游戏、PHP 聊天室、硬件通讯、智能家居、车联网、物联网等领域的开发。

Workerman 支持 TCP 长连接,支持 Websocket、HTTP 等协议,支持自定义协议。拥有异步 Mysql、异步 Redis、异步 Http、MQTT 物联网客户端、异步消息队列等众多高性能组件。

workerman 的目标是让 PHP 开发者更容易的开发出基于 socket 的高性能的应用服务,而不用去了解 PHP socket 以及 PHP 多进程细节。 workerman 本身是一个 PHP 多进程服务器框架,具有 PHP 进程管理以及 socket 通信的模块,所以不依赖 php-fpm、nginx 或者 apache 等这些容器便可以独立运行。

Workerman 支持的特性纯 PHP 开发,多进程支持,支持 php7,支持 hhvm支持 TCP/UDP,单机可支持数百万以上 TCP 长连接支持分布式部署,集群能支持数百万甚至更高的并发 TCP 连接支持 libevent 事件触发网络库支持热更新及服务器平滑重启拥有异步 Mysql、Redis、Dns 等众多高性能组件为什么 workerman 拥有卓越的性能

避免读取磁盘和反复编译

workerman 运行过程中,单个进程生命周期内只要 PHP 文件被载入编译过一次,便会常驻内存,不会再去从磁盘读取或者再去编译。 workerman 省去了重复的请求初始化、创建执行环境、词法解析、语法解析、编译生成 opcode 以及请求关闭等诸多耗时的步骤。 实际上 workerman 运行起来后便几乎没有磁盘 IO 及 PHP 文件编译开销,剩下的只是简单的计算过程,这使得 workerman 运行飞快。

数据或者资源可以全局共享

workerman 中多个请求是可以共享数据或者资源的,当前请求产生的全局变量或者类的静态成员在下一次请求中仍然有效。 这对于减少开销,提高运行效率非常有用。例如业务只要初始化一次数据库连接,那么全局都可以共享这个连接,这实现了真正意义上的数据库长连接。 从而不必每次用户请求都去创建新的连接,避免了连接时三次握手、连接后权限验证以及断开连接时四次挥手等耗时的交互过程。不仅数据库,像 redis、 memcache 等同样有效。少了这些开销和网络交互,使得 workerman 运行更快。

没有多余的网络开销

传统 PHP 应用程序需要借助 apache、nginx 等容器才能对外提供网络服务,这就导致多了一层 apache、nginx 等容器到 PHP 进程的数据传输开销。 并且由于运行了 apache 或者 nginx 容器,这将进一步消耗服务器的资源。 workerman 便没有这部分开销,这是由于 workerman 自身便是一个服务器容器具有 PHP 进程管理以及网络通讯功能, 完全不依赖于 apache、nginx、php-fpm 等这些容器便可以独立运行,所以性能更高。

进程模型简单

workerman 是多进程(也有多线程版本)的,可以充分利用服务器多核资源。并且 workerman 具有简单的进程模型,主进程只负责监控子进程,而每个子进程独自接受维护客户端的连接,独自读取连接上发来的数据,独自处理。 子进程间默认没有任何数据通讯,主进程和子进程之间只有一次信号通讯。简单的进程通讯模型使得 workerman 相比其它复杂的进程模型的软件更高效。


本文地址:百科问答频道 https://www.neebe.cn/wenda/1028430.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科问答
小编:小易整编
相关文章相关阅读
  • 销售额是什么意思?

    销售额是什么意思?

    销售额是指商业企业的一项关键指标,代表企业在一定时期内的营业额,它实时反映企业经营活动的情况,是衡量企业经营能力和效益的重要指标。销售额可以有多种形式,如零售销售额、批发销售额和出口销售额等。销售额的计算方法很简单,即:销售额=销售数量...

  • iTools是什么意思?

    iTools是什么意思?

    iTools是一款功能强大的苹果设备管理工具。它为苹果设备用户提供了便捷的设备管理功能,包括文件传输、备份还原、应用程序管理、屏幕截图、屏幕录制、音乐管理、视频管理等多种功能,而且支持所有的i系列设备,例如iPod、iPhone和iPad...

  • 无损分区工具是什么意思?

    无损分区工具是什么意思?

    无损分区工具是一种硬盘分区方式,是指在分区时保持原有数据不受损坏的一种分区技术,这种分区技术称为“无损分区”。无损分区可以保护硬盘上的数据,在分区时不会破坏硬盘上的任何数据。而且,在数据安全性上也有一定的优势,因为它不会破坏的数据,因此可...

  • 消费凭证是什么意思?

    消费凭证是什么意思?

    消费凭证是指一种书面的证明凭证,当消费者购买商品或服务时,商家会向其提供消费凭证,凭此凭证可以证明消费者购买了特定的商品或服务,以及在这次购买中耗费的钱财数额。消费凭证是一种用于表示购买交易的依据,是为消费者提供全面鉴证的凭证。它可以表明...

  • DSM系统是什么意思?

    DSM系统是什么意思?

    DSM是一种新晋的分布式、可扩展的模块化系统。它是以无服务器、全节点一致性的系统架构为基础,采用多进程系统将服务、运维功能以模块化的方式集合到一起而不会配置服务的的系统设计模型。DSM的核心特点在于采用了一致性的分布式架构,模块化的结构,...

  • 裸金属是什么意思?

    裸金属是什么意思?

    简而言之,裸金属是指被提取出来,没有被添加任何基材的未加工金属。它是将矿石熔化下去后提炼出来的金属,用来做各种活动和企业的原材料。裸金属通常是一种切削或加工的未经热处理的金属。裸金属一般不经过任何表面处理,以自身属性状态出售。它不会涂以油...

  • CVSS是什么意思?

    CVSS是什么意思?

    CVSS(CommonVulnerabilityScoringSystem,中文译名“公共漏洞评分系统”)是一种漏洞分级和评分系统,是由美国国家信息安全标准研究所(NIST)推行的一套机制,它利用特定的参数来构建一个漏洞评级分类体系...

  • 键盘接口是什么意思?

    键盘接口是什么意思?

    键盘接口一般是用于挂接键盘的接口。它也称为键盘插座或键盘接头,它是一个连接键盘和计算机系统之间的重要硬件部件。键盘接口可以用来接收键盘上发出信号,以便在主板上发出完整的指令。键盘接口可以分为有线和无线两种,有线键盘接口是指采用插孔的连接方...

  • 周排行
  • 月排行
  • 年排行

精彩推荐