首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >PHP 高性能异步协程框架 EasySwoole

PHP 高性能异步协程框架 EasySwoole

作者头像
Tinywan
发布2026-07-01 12:06:10
发布2026-07-01 12:06:10
1050
举报
文章被收录于专栏:开源技术小栈开源技术小栈

概述

EasySwoole 3.x 是一款基于 Swoole Server 开发的常驻内存型分布式 PHP 框架,专为 API 服务而生。

它高度封装了 Swoole 的协程特性,支持同时混合监听HTTP、WebSocket、自定义TCP、UDP协议,且拥有丰富的组件,例如协程 连接池、TP风格的协程ORM、协程微信SDK、协程支付宝SDK、协程Kafka客户端、协程ElasticSearch客户端、协程Consul客户端、协程Redis客户端、协程Apollo客户端、协程NSQ客户端、协程自定义队列、 协程Memcached客户端、协程视图引擎、JWT、协程RPC、协程SMTP客户端、协程HTTP客户端、协程Actor、Crontab定时器等诸多组件。让开发者以最低的学习成本和精力编写出多进程,可异步,高可用的应用服务。

特点

  • 核心定位:高性能协程框架,支持事件驱动、异步任务、毫秒级定时器。专为 API 设计,但也适用于 WebSocket、TCP/UDP 等实时通信。
  • 关键优势
    • 支持百万级并发连接。
    • 常驻内存,文件加载一次,响应速度极快。
    • 生产级验证:已被腾讯 IEG、网宿科技、360 金融、美图等企业采用。
  • 支持协议:HTTP、WebSocket、自定义 TCP/UDP、UnixSocket。
  • 运行模式:异步/同步/协程、多进程/多线程、CPU 亲和性、守护进程、SSL/TLS 加密。

组件

框架内置丰富协程组件,开箱即用:

  • 数据库/缓存:协程 MySQL/Redis/Memcached 连接池、ORM(类似 ThinkPHP)。
  • 消息/搜索:协程 Kafka、NSQ、ElasticSearch 客户端。
  • 网络/客户端:协程 HTTP/SMTP 客户端。
  • 配置/权限:分布式 RPC、Consul/Apollo 配置中心、JWT/OAuth/Casbin 验证。
  • 工具类:Snowflake ID 生成、Crontab 秒级任务、自定义进程、消息队列、链路跟踪(Tracker)、限流器(AtomicLimit)、Fast-Cache。
  • 其他:协程模板引擎、EventLoop API、对象池、微服务支持。

安装与启动

  • 环境要求:PHP 7.2+、Swoole 4.4+ 扩展。
  • Composer 安装
代码语言:javascript
复制
composer require easyswoole/easyswoole=3.*
  • 初始化项目
代码语言:javascript
复制
php vendor/easyswoole/easyswoole/bin/easyswoole.php install
 ______                          _____                              _        
|  ____|                        / ____|                            | |       
| |__      __ _   ___   _   _  | (___   __      __   ___     ___   | |   ___ 
|  __|    / _` | / __| | | | |  \___ \  \ \ /\ / /  / _ \   / _ \  | |  / _ \
| |____  | (_| | \__ \ | |_| |  ____) |  \ V  V /  | (_) | | (_) | | | |  __/
|______|  \__,_| |___/  \__, | |_____/    \_/\_/    \___/   \___/  |_|  \___|
                         __/ |                                                
                        |___/
do you want to release Index.php? [ Y / N (default) ] : Y
do you want to release Router.php? [ Y / N (default) ] : Y
install success,enjoy!!!
dont forget run composer dump-autoload !!!
  • 启动服务
代码语言:javascript
复制
# 启动框架
cd /var/www
php easyswoole.php server start

默认监听 9501 端口(HTTP)。支持 Nginx 反向代理。

  • 配置文件EasySwoole/Conf 目录下配置 Server、监听器等。

4. 基本使用

  • HTTP 服务:通过 App\HttpController 编写控制器,路由基于注解或配置。 示例:
代码语言:javascript
复制
class IndexController extends \EasySwoole\Http\AbstractInterface\Controller {
    public function index() {
        $this->response()->write('Hello EasySwoole');
    }
}
  • WebSocket/TCP:配置监听器,实现 WebSocketInterface 或自定义 Handler。
  • 扩展开发:支持自定义进程、定时任务、中间件、异常处理。
  • 开发模式:支持热重载、日志记录、调试工具。

官方:https://www.easyswoole.com

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-11-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开源技术小栈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概述
  • 特点
  • 组件
  • 安装与启动
  • 4. 基本使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档