框架
最后更新于:2022-04-02 06:18:23
# 框架
[TOC]
## Swoft:基于 Swoole 原生协程的新时代 PHP 全栈式协程框架
[https://github.com/swoft-cloud/swoft](https://github.com/swoft-cloud/swoft)
首个基于 Swoole 原生协程的新时代 PHP 高性能协程全栈框架,内置协程网络服务器及常用的协程客户端,常驻内存,不依赖传统的 PHP-FPM,全异步非阻塞 IO 实现,以类似于同步客户端的写法实现异步客户端的使用,没有复杂的异步回调,没有繁琐的 yield,有类似 Go 语言的协程、灵活的注解、强大的全局依赖注入容器、完善的服务治理、灵活强大的 AOP、标准的 PSR 规范实现等等,可以用于构建高性能的Web系统、API、中间件、基础服务等等。
* 基于 Swoole 扩展
* 内置协程 HTTP, TCP, WebSocket 网络服务器
* 强大的 AOP (面向切面编程)
* 灵活完善的注解功能
* 全局的依赖注入容器
* 基于 PSR-7 的 HTTP 消息实现
* 基于 PSR-14 的事件管理器
* 基于 PSR-15 的中间件
* 基于 PSR-16 的缓存设计
* 可扩展的高性能 RPC
* 完善的服务治理,熔断,降级,负载,注册与发现
* 数据库 ORM
* 通用连接池
* 协程 Mysql, Redis, RPC, HTTP 客户端
* 协程和同步阻塞客户端无缝自动切换
* 协程、异步任务投递
* 自定义用户进程
* RESTful 支持
* 国际化(i18n)支持
* 高性能路由
* 快速灵活的参数验证器
* 别名机制
* 强大的日志系统
* 跨平台热更新自动 Reload
## easySwoole 高性能HTTP框架
easySwoole 专为API而生,是一款常驻内存化的PHP开发框架,摆脱传统PHP运行模式在进程唤起和文件加载上带来的性能损失,自带服务器功能,无需依赖Apache或Nginx运行。在web服务器模式下,支持多层级(组模式)控制器访问与多种事件回调,高度封装了Swoole Server 而依旧维持Swoole Server原有特性,支持在 Server 中监听自定义的TCP、UDP协议,让开发者可以最低的学习成本和精力,编写出多进程,可定时,可异步,高可用的应用服务。
项目地址 :[https://www.easyswoole.com/](https://www.easyswoole.com/)
## MixPHP
[MixPHP](http://www.mixphp.cn/)是一款基于 Swoole 的FPM、常驻内存、协程三模 PHP 高性能框架,MixPHP 秉承 "普及 PHP 常驻内存型解决方案,促进 PHP 往更后端发展" 的理念而创造,采用 Swoole 扩展作为底层引擎,围绕常驻内存的方式而设计,提供了 HTTP / WebSocket / Console 开发所需的众多开箱即用的组件,在其他 Swoole 框架都定位于大中型团队、庞大的 PHP 应用集群的时候,MixPHP 决定推动这项技术的普及,我们定位于众多的中小型企业、创业型公司,我们将 Swoole 的复杂度封装起来,用简单的编码方式呈现给用户,让更多的中级程序员也可打造高并发系统,努力让 Swoole 不再只是高级程序员的专利。
* * *
## Swoolefy
[swoolefy](https://github.com/bingcool/swoolefy)是一个基于swoole实现的轻量级高性能的常驻内存型的API和Web应用服务框架,高度封装了http,websocket,udp服务器,以及基于tcp实现可扩展的rpc服务, 同时支持composer包方式安装部署项目。基于简单易用,swoolefy抽象Event事件处理类, 实现与底层的回调的解耦,支持swoole原生协程,协程实例应用注册,组件依赖注入,全局事件注册,异步任务管理,自定义进程管理,RPC服务,mysql,redis连接池,支持基于自定义进程的redis,rabitmq,kafka的订阅发布,crontab定时任务等等,让更多phper能够高效低成本开发出常驻内存应用服务。
* * *
* [Tencent-TSF](https://github.com/tencent-php/tsf)腾讯公司推出的PHP协程框架,基于Swoole+PHP Generator实现Coroutine,可以像Golang一样用协程实现高并发服务器。
* [swoole\_framework](https://github.com/matyhtf/swoole_framework)基于swoole扩展开发的通用后端服务框架,包含了内置PHP应用服务器、FastCGI、WebSocket、Web框架等丰富的功能特性
* [LaravelS](https://github.com/hhxsv5/laravel-s)基于Swoole加速Laravel/Lumen,常驻内存,内置HTTP/WebSocket Server,支持TCP/UDP Server、自定义进程、异步的事件监听、异步任务队列、毫秒级定时任务、平滑Reload,与Nginx配合搭建高可用分布式服务器群,开箱即用。
* [zphp](https://github.com/shenzhe/zphp)一个极轻的的,专用于游戏(社交,网页,移动)的服务器端开发框架.提供高性能实时通信方案。zphp使用swoole作为底层网络通信的框架。
* [zapi](https://github.com/keaixiaou/zapi)基于swoole+generator的http api异步非阻塞轻量级框架,内置mysql、redis、memcached、mongodb全套异步客户端的连接池,内置http异步客户端,近乎同步的写法,却是异步的调用,性能强悍
* [zhttp](https://github.com/keaixiaou/zhttp)基于swoole+generator的异步非阻塞轻量级web框架,内置mysql、redis、memcached、mongodb全套异步客户端的连接池,内置http异步客户端,近乎同步的写法,却是异步的调用,性能强悍
* [swoole-yaf](https://github.com/LinkedDestiny/swoole-yaf)结合PHP的Yaf框架和Swoole扩展的高性能PHP Web框架
* [Swoole-Yaf](https://github.com/wenjun1055/swoole-yaf)将Yaf框架和Swoole扩展提供的HttpServer结合在一起,server和框架高度结合形成超高性能的组合
* [ciswoole](https://github.com/smalleyes/ciswoole)CodeIgniter 2.2 with Swoole\_Http\_Server
* [owl-mvc](https://github.com/yeaha/owl-mvc)基于 swoole\_http\_server 的一套PHP MVC框架
* [hprose/hprose-php](https://github.com/hprose/hprose-php)高性能远程对象调用服务,PHP 版本底层使用 swoole 实现了 http,https,tcp,tcp6,websocket, unix socket 服务器和 tcp,tcp6,unix socket 客户端。
* [yiiSwoole](https://github.com/kcloze/yiiSwoole)Yii 1.1.16 with Swoole Http\_Server,In high-concurrency situations,will be better than php-fpm
* [Dora-RPC](https://github.com/xcl3721/Dora-RPC)是基础swoole实现的轻量级高性能RPC框架,支持同步/异步调用,拥有有多任务并发及长链接维持特性
* [Blink](https://github.com/bixuehujin/blink)是一个为构建 “long running” 服务而生的 Web 微型高性能框架,它为构建 Web 应用程序提供简洁优雅的API,尽量的减轻我们的常规开发工作
* [swPromise](https://github.com/coooold/swPromise)基于swoole的PHP promise框架
* [Aurora](https://github.com/zxz054321/aurora)是一个建立在 Lightning 之上的高性能高并发框架,为追求极限性能而打造,底层由Phalcon + Swoole组合驱动,适用于需要支持高并发的场景,如API 接口、微服务等。
* [Group](https://github.com/fucongcong/Group)轻量级框架。基于swoole实现了定时任务,分布式任务队列,异步多进程服务(模拟map-reduce),结合hprose的rpc服务。
* [Group-co](https://github.com/fucongcong/Group-Co)优雅的异步协程框架,支持服务化搭建高并发httpserver,支持分布式使用,详情请戳链接。
* [FastD](https://github.com/JanHuang/fastD)FastD 是一个支持 Swoole 的轻量级 Web 开发框架,可适用于对性能有要求的 API 场景,并且灵活的扩展性可以让开发者们更容易地建造自己的服务 (基于Swoole)
* [Yii2-Swoole](https://github.com/tsingsun/yii2-swoole)支持基于Yii2框架运行于Swoole中,同时可以很简单的支持Swool 1.0与2.0协程,自带mysql,redis连接池,可以使用Yii2的全栈框架来开发HTTP,WebSocket等网络服务。
* [ultraman](https://github.com/zoooozz/ultraman)结合PHP的Yaf框架和Swoole扩展的高性能PHP 封装成composer 及其容易上手
* [Lawoole](https://github.com/lawoole/lawoole)基于 Laravel 和 Swoole 的高性能 PHP 框架。借助 Swoole 的高性能特点,弥补了 Laravel 的性能缺陷。在大幅提升程序运行速度的情况下,能够使用到绝大部分 Laravel 中优秀的特性。在 Lawoole 中,你可以拥有与 Laravel 一致的开发体验,编写那些富有创造力的代码。
* [CabalPHP](https://www.cabalphp.com/)基于Swoole的**轻量、高效、全异步**开源框架,**自动生成API接口文档**,IDE下有完整的代码提示,相较于其他框架我们有完善的协程数据库和缓存引擎哦!
## MyQEE 服务器类库
[https://github.com/myqee/server](https://github.com/myqee/server)
MyQEE 服务器类库是一套基础服务器类库,让你可以摒弃 Swoole 传统的 On 回调写法,在不损失性能和功能的前提下实现功能和服务的对象抽象化,实现全新的编程体验,让代码清晰有条理。特别适合复杂的应用服务器,不管是你要在一起集成 Http 还是 Tcp 还是 WebSocket 服务,解决了使用 Swoole 开发复杂服务器的痛点。另外,通过本类库使得php新手使用 swoole 会变得更轻松不再那么迷茫(比如多端口绑定、任务进程和工作进程的关系和功能)。
MyQEE服务器类库特性:
* 对象抽象化:为每个 Worker、TaskWorker、以及端口监听分配一个对象,业务层自己实现相应功能即可,让开发代码清晰有条理;
* 填补了 Swoole 服务器开发中的很多坑;
* 支持大文件、断点、分片上传功能并完美融合服务(`swoole_http_server`不支持大文件上传,会有内存问题,也存在一些细节上的bug);
* 易于使用的多重混合服务器端口监听方案;
* 解决服务器选型痛点;
* 解决代码混乱的痛点;
* 解决新手搞不清 Worker、TaskWorker 和多端口之间的功能、关系、使用特性;
* 更加简单易用的热更新方案;
* 连接池、资源池;
* 更多的周边功能特性;
## zys高性能服务框架
[https://github.com/qieangel2013/zys](https://github.com/qieangel2013/zys)基于Yaf和Swoole的i高性能Service框架,核心特性:
1. 基于swoole提供分布式服务器通讯服务
2. 基于thrift提供rpc远程调用服务
3. 基于HTML5提供在线网络直播平台服务
4. 基于swoole提供同步异步数据库连接池服务
5. 基于swoole提供异步任务服务器投递任务服务
6. 基于vmstat提供服务器硬件实时监控服务
7. 基于yac、yaconf提供共享数据、配置服务
8. 基于zqf提供高并发计数器、红包、二维码服务
9. 很好的支持网页版console的shell服务
10. 基于hprose提供rpc远程调用、推送等服务
## WebWorker-swoole高性能http服务框架
[https://github.com/xtgxiso/WebWorker-swoole](https://github.com/xtgxiso/WebWorker-swoole)基于Swoole2.0的协程特性写的框架,核心特性:
1. 实现了简单路由功能的小巧框架,便于开发者使用和扩展,非常具有灵活性
2. 相比php-fpm或mod\_php的方式性能有几十倍左右的提升
3. 可设置自动加载目录加载目录下的所有php文件(仅一级不支持递归)
4. 自定义404响应
5. 支持中间件
6. redis支持原生同步和协程版本,只需要一个配置参数即可
7. mysql支持原生同步和协程版本,只需要一个配置参数即可
## MiniSwoole
[https://github.com/xwmhmily/miniSwoole](https://github.com/xwmhmily/miniSwoole)迷你Swoole
### Write Less and Do More
. Http, TCP, UDP, Websocket 支持
. Controller - Model 分层
. MySQL 连接池及断线自动重连
. MySQL 分表分库,全链式操作
. Shell 脚本控制服务
. Hooker 与 Worker
. 良好的错误提示及类自动Autoload
. PHP 与MySQL 日志分开收集
. 心跳检测,无人值守
. HTTP 根据URI自动路由
. 多运行环境支持
. 完整的 README.md 及客户端调用示例
';