当前位置:首页 > 教育

workerman workerman 一个高性能的PHP Socket 服务器

最近在玩一个跑车的游戏。游戏规则是用手机微信扫描,然后打开活动。车子会从一个手机屏幕跑到另一个手机屏幕,你可以手动点击切换跑道。

这个项目使用的主要技术是php+redis+mysql,框架是workman框架。今天给大家讲讲匠人框架的相关知识。游戏结束后,有兴趣的可以留下邮箱,我会把源代码发给你。

工人

Workerman是一个高性能的PHP socket服务器框架。workerman基于PHP多进程和libevent事件轮询库。PHP开发者可以开发自己的网络应用,比如Rpc服务、聊天室服务器、手机游戏服务器等。仅通过实现一个或两个接口。

Workerman的目标是让PHP开发人员在不了解PHP socket和PHP多进程细节的情况下,更容易开发基于socket的高性能应用服务。Workerman本身就是一个PHP多进程服务器框架,带有PHP进程管理和socket通信模块,所以可以独立运行,不依赖php-fpm、nginx或apache。

Workerman的特点是纯PHP开发

Workerman完全是PHP开发的,workerman开发的应用可以独立运行,不依赖php-fpm、apache、nginx。这使得PHP开发人员开发、部署和调试应用程序非常方便。

支持PHP多进程

为了充分发挥服务器的多CPU性能,workerman默认支持多进程多任务。Workerman启动一个主流程和几个子流程,向外界提供服务。主流程负责监控子流程的退出信号,并生成新的子流程来处理服务。这不仅提高了应用程序的性能,而且使workerman更加稳定。

支持TCP和UDP

Workerman支持两种传输层协议,TCP和UDP。只需更改配置的一个字段,无需更改业务代码即可更改传输层协议。

支持高并发

Workerman支持Libeevent事件轮询库(需要安装Libeevent扩展),Libeevent在高并发方面性能优异。如果没有安装库事件,选择相关的系统调用。

支持各种应用层协议

该接口支持各种应用层协议,包括自定义协议。Workerman默认支持HTTP、WebSocket和简单文本协议。同时,Workerman提供了一个通用的协议接口,开发人员可以在此基础上轻松开发自己的协议。

支持长连接

很多时候PHP应用需要和客户端保持长时间的连接,比如聊天室、游戏等,而传统的PHP容器(apache、nginx、php-fpm)很难做到这一点。Workerman使PHP长连接的使用变得很容易。单个php进程可以支持数千甚至数万个并发连接,而多个进程可以支持数十万甚至数百万个并发连接。

自己监控

Workerman内部有一个监控和统计模块,可以统计workerman本身的一些数据,比如进程退出次数和退出状态、每个进程占用的内存大小、监控的ip端口、每个进程的启动时间、每个进程运行的服务名称、每个进程处理的请求数、连接数、发送的失败数据包数等等。可以通过运行PHP start.php状态在本地查看这些信息。

支持心跳检测

Gateway/Worker开发模型支持服务器端的心跳检测,可以定期向客户端发送应用层的心跳,可以及时检测客户端的极端断线(断电、网络突发故障等)。).

workman还有很多其他特性,就不举例了。有兴趣可以去官网查手册。

1.《workerman workerman 一个高性能的PHP Socket 服务器》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《workerman workerman 一个高性能的PHP Socket 服务器》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/jiaoyu/810335.html

上一篇

男子扔烟头引爆炸 男子扔烟头引爆炸 视频曝光爆炸一瞬间令人触目惊心

下一篇

江中猴姑误导消费者 江中猴姑"误导消费者"案将开庭 被告徐静蕾等提交新证据

包养签3千万协议 包养签3千万协议 网友:男人有钱就变坏?女人变坏就有钱?

在商业上,老王曾经是成功商人的典范。恋爱中他也是春风得意,娶了一个比他小近10岁的能干媳妇,家庭美满。然而,老王并不满意。他偷偷收养了一个比他小20岁的小三。生下私生女后,他与小三签订了3000万的赡养协议,并立即支付了1000万。后来生意受挫,老王想向小三讨回10...

wifexited php多进程编程详解

如果对手机阅读不满意,可以直接点击左下角阅读原文。前言 php单进程中的问题: 多核处理器利用不足,而单处理器通常需要等待其他操作完成后才能继续工作。任何现代操作系统都可以在幕后进行多任务处理,这意味着在短时间内,一台计算机可以调度多个进程来执行多个程序。 如果我们...

cyc 十分钟玩转CYC旋风协议教程

  • cyc 十分钟玩转CYC旋风协议教程
  • cyc 十分钟玩转CYC旋风协议教程
  • cyc 十分钟玩转CYC旋风协议教程

中韩之战 网游史上最惨烈4次大战,2小时战损16万人,差点把服务器打崩

  • 中韩之战 网游史上最惨烈4次大战,2小时战损16万人,差点把服务器打崩
  • 中韩之战 网游史上最惨烈4次大战,2小时战损16万人,差点把服务器打崩
  • 中韩之战 网游史上最惨烈4次大战,2小时战损16万人,差点把服务器打崩

个人web服务器 建站其实就是这么简单(服务器系统篇)

  • 个人web服务器 建站其实就是这么简单(服务器系统篇)
  • 个人web服务器 建站其实就是这么简单(服务器系统篇)
  • 个人web服务器 建站其实就是这么简单(服务器系统篇)
南华工业 上海中船国家工程中心与南华工业签智能船等战略合作协议

南华工业 上海中船国家工程中心与南华工业签智能船等战略合作协议

4月25日上午,上海CSSC国家工程研究中心有限公司与武汉南华工业设备工程有限公司在武汉签署战略合作协议。双方将重点关注智能船舶系统及设备、无人艇自主导航系统、船舶任务系统、军用和民用船舶以及海洋工程信息化和智能化课题的联合研发。战略合作协议的签署将有助于双方进一步...

HVD 业界 | 详解Horovod:Uber开源的TensorFlow分布式深度学习框架

HVD 业界 | 详解Horovod:Uber开源的TensorFlow分布式深度学习框架

选自Uber 参与:李泽南、薛璐 Horovod是Uber开源的另一个深度学习工具。其开发吸收了Facebook的“一小时培训ImageNet论文”和百度的Ring Allreduce的优势,可以帮助用户实现分布式培训。本文将简要介绍这一框架的特点。近年来,深度学习...

linux查看内存使用情况 Linux 查看进程消耗内存情况总结

linux查看内存使用情况 Linux 查看进程消耗内存情况总结

www.cnblogs.com/kerrycode/p/9568854.html在Linux中,有很多检查内存使用情况的命令或工具。今天,我们来看看如何检查进程的内存消耗和占用。Linux的内存管理和相关概念比Windows复杂。在此之前,我们需要了解Linux系统...