workerman框架使用 - workerman 框架
workerman框架使用
workerman
Workerman是一款开源高性能异步PHP
socket框架。支持高并发,超高稳定性,被广泛的用于手机app、移动通讯,微信小程序,手游服务端、网络游戏、PHP聊天室、硬件通讯、智能家居、车联网、物联网等领域的开发。支持TCP长连接,支持Websocket、HTTP等协议,支持自定义协议。拥有异步Mysql、异步Redis、异步Http、MQTT物联网客户端、异步消息队列等众多高性能组件。
GatewayWorker
GatewayWorker是基于 Workerman 实现的一个更完善的专门用于实现TCP长连接的项目框架。用于快速开发TCP长连接应用,例如app推送服务端、即时IM服务端、游戏服务端、物联网、智能家居等等。
常用组件
GatewayWorker基于Workerman开发,Workerman上的组件都可以在GatewayWorker中使用。
- GlobalData分布式变量共享组件
- Channel分布式通讯组件
- 文件监控组件
- Mysql组件
- Redis组件
- 异步DNS组件
- 异步HTTP客户端组件
- 异步消息队列ZMQ组件
- 异步消息队列RabbitMQ组件
框架与服务
开办网站,需要购买服务器,到服务器经营商手上购买服务器(比如云服务器),或者使用自己的独立的物理服务器。上面安装使用这个操作系统,比如centOS、windows等等。这就是服务器。常见的centOS服务器。购买到服务器上,再安装各种服务。比如MySQL服务、nginx服务、php-fpm服务、ftp服务、git服务、redis服务等等。他们都有各自的端口,对外提供服务功能。也都被称呼对应功能的服务器。如nginx服务器、MySQL服务器、ftp服务器。
- web服务,也称为www服务器、http服务器,其主要功能是提供网上信息浏览服务。Unix和Linux平台下常用的服务器有Apache、Nginx、Lighttpd、Tomcat、IBM WebSphere等,其中应用最广泛的是Apache。而Window NT/2000/2003平台下最常用的服务器是微软公司的IIS。默认端口:80(http)、443(https)。
- WebSocket服务提供
socket
连接。阅读详细。
php编程国内使用比较火的MVC框架有,ThinkPHP、Lararvel等,他们不能直接提供长TCP连接,需要结合其他框架使用。最近比较火的,能提供TCP长连接的框架有:workerman、swoole。
总结:上面这两类框架,根据需求场景,可以单独部署。也可以结合使用。
单独部署使用 GatewayWorker 框架
- 需求:创建一个即时聊天室。随时进入即可交流。单独使用GatewayWorker 框架,既可实现,所以也不需要其他框架。注意:2021年最新版本是GatewayWorker 3.X
- 环境:服务器运行支持PHP语言。
服务器端
方法一:在centOS服务器,下载安装,手动安装
cd /usr/wwwwget -c http://www.workerman.net/download/GatewayWorker.zip unzip GatewayWorker.zip cd GatewayWorker
方式二:在centOS服务器,composer安装
cd /usr/wwwcomposer require workerman/gateway-worker
此时,形成的目录结构:
GatewayWorker ├── Applications // 这里是所有开发者应用项目 │ └── YourApp // 其中一个项目目录,目录名可以自定义 │ ├── Events.php // 开发者只需要关注这个文件 │ ├── start_gateway.php // gateway进程启动脚本,包括端口号等设置 │ ├── start_businessworker.php // businessWorker进程启动脚本 │ └── start_register.php // 注册服务启动脚本 │ ├── start.php // 全局启动脚本,此脚本会依次加载Applications/项目/start_*.php启动脚本 │ └── vendor // GatewayWorker框架和Workerman框架源码目录,此目录开发者不用关心
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!