php workerman能做什么?
workerman是一款纯php开发的开源高性能的php socket 服务框架。
workerman不是重复造轮子,它不是一个mvc框架,而是一个更底层更通用的socket服务框架,你可以用它开发tcp代理、梯子代理、做游戏服务器、邮件服务器、ftp服务器、甚至开发一个php版本的redis、php版本的数据库、php版本的nginx、php版本的php-fpm等等。workerman可以说是php领域的一次创新,让开发者彻底摆脱了php只能做web的束缚。
实际上workerman类似一个php版本的nginx,核心也是多进程+epoll+非阻塞io。workerman每个进程能维持上万并发连接。由于本身常住内存,不依赖apache、nginx、php-fpm这些容器,拥有超高的性能。同时支持tcp、udp、unixsocket,支持长连接,支持websocket、http、wss、https等通讯协以及各种自定义协议。拥有定时器、异步socket客户端、异步mysql、异步redis、异步http、异步消息队列等众多高性能组件。
workerman的一些应用方向
workerman不同于传统mvc框架,workerman不仅可以用于web开发,同时还有更广阔的应用领域,例如即时通讯类、物联网、游戏、服务治理、其它服务器或者中间件,这无疑大大提高了php开发者的视野。目前这些领域的php开发者奇缺,如果想在php领域有自己的技术优势,不满足于每天的增删改查工作,或者想向架构师方向或者技术大牛的方向发展,workerman都是非常值得学习的框架。建议开发者不仅会用,而且能基于workerman开发出属于自己的开源项目,提升技能增加自己的影响力,比如beanbun多进程网络爬虫框架就是一个很好的例子,刚刚上线不久就获得众多好评。
workerman的一些应用方向如下:
1、即时通讯类
例如网页即时聊天、即时消息推送、微信小程序、手机app消息推送、pc软件消息推送等等
2、物联网类
例如workerman与打印机通讯、与单片机通讯、智能手环、智能家居、共享单车等等。
3、游戏服务器类
例如棋牌游戏、mmorpg游戏等等。
4、soa服务化
利用workerman将现有业务不同功能单元封装起来,以服务的形式对外提供统一的接口,达到系统松耦合、易维护、高可用、易伸缩。
5、其它服务器软件
例如 gatewayworker,phpsocket.io,http代理,sock5代理,分布式通讯组件,分布式变量共享组件,消息队列、dns服务器、webserver、cdn服务器、ftp服务器等等
6、中间件
例如异步mysql组件,异步redis组件,异步http组件,异步消息队列组件,异步dns组件,文件监控组件,还有很多第三方开发的组件框架等等
显然传统的mvc框架很难实现以上的功能,所以也就是workerman诞生的原因。
更多workerman相关技术文章,请访问workerman入门教程栏目!
以上就是php workerman能做什么的详细内容。