× 警告!旧版文档已经暂停维护,请查看新版文档。点击前往新版文档

框架

Hyperf:高性能企业级协程框架

Hyperf官网:https://hyperf.io
Github仓库:https://github.com/hyperf/hyperf

Hyperf 是基于 Swoole 4.4+ 实现的高性能、高灵活性的 PHP 协程框架,内置协程服务器及大量常用的组件,性能较传统基于 PHP-FPM 的框架有质的提升,提供超高性能的同时,也保持着极其灵活的可扩展性,标准组件均基于 PSR 标准 实现,基于强大的依赖注入设计,保证了绝大部分组件或类都是 可替换可复用 的。

框架组件库除了常见的协程版的 MySQL 客户端Redis 客户端,还为您准备了协程版的 Eloquent ORMWebSocket 服务端及客户端JSON RPC 服务端及客户端GRPC 服务端及客户端Zipkin/Jaeger (OpenTracing)Guzzle HTTP 客户端Elasticsearch 客户端Consul 客户端ETCD 客户端AMQP 组件Apollo 配置中心阿里云 ACM 应用配置管理ETCD 配置中心基于令牌桶算法的限流器通用连接池熔断器Swagger 文档生成Swoole TrackerBlade 和 Smarty 视图引擎Snowflake 全局ID生成器 等组件,省去了自己实现对应协程版本的麻烦。

Hyperf 还提供了 基于 PSR-11 的依赖注入容器注解AOP 面向切面编程基于 PSR-15 的中间件自定义进程基于 PSR-14 的事件管理器Redis/RabbitMQ 消息队列自动模型缓存基于 PSR-16 的缓存Crontab 秒级定时任务国际化Validation 表单验证器 等非常便捷的功能,满足丰富的技术场景和业务场景,开箱即用。

Swoft:PHP 微服务协程框架

https://github.com/swoft-cloud/swoft

Swoft 是一款基于 Swoole 扩展实现的 PHP 微服务协程框架。Swoft 能像 Go 一样,内置协程网络服务器及常用的协程客户端且常驻内存,不依赖传统的 PHP-FPM。有类似 Go 语言的协程操作方式,有类似 Spring Cloud 框架灵活的注解、强大的全局依赖注入容器、完善的服务治理、灵活强大的 AOP、标准的 PSR 规范实现等等。

Swoft 通过长达三年的积累和方向的探索,把 Swoft 打造成 PHP 界的 Spring Cloud, 它是 PHP 高性能框架和微服务治理的最佳选择。

  • 内置高性能网络服务器(Http/Websocket/RPC/TCP)
  • 灵活的组件功能
  • 强大的注解功能
  • 多样化的命令终端(控制台)
  • 强大的面向切面编程(AOP)
  • 容器管理,依赖注入(DI)
  • 灵活的事件机制
  • 基于PSR-7的HTTP消息的实现
  • 基于PSR-14的事件管理
  • 基于PSR-15的中间件
  • 国际化(i18n)支持
  • 简单有效的参数验证器
  • 高性能连接池(Mysql/Redis/RPC),自动重新连接
  • 数据库高度兼容Laravel的使用方式
  • Redis高度兼容Laravel的使用方式
  • 秒级定时任务
  • 进程池
  • 高效的任务处理
  • 灵活的异常处理
  • 强大的日志系统
  • 服务注册与发现
  • 配置中心
  • 服务限流
  • 服务降级
  • 服务熔断
  • Apollo
  • Consul

MixPHP

MixPHP 是一款基于 Swoole 的 FastCGI、常驻内存、协程三模 PHP 高性能框架,MixPHP 秉承 "普及 PHP 常驻内存型解决方案,促进 PHP 往更后端发展" 的理念而创造,采用 Swoole 原生协程与最新的 PHP Stream 一键协程化技术,提供了 Console / Daemon / HTTP / WebSocket / TCP / UDP 开发所需的众多开箱即用的组件,在其他 Swoole 框架都定位于大中型团队、庞大的 PHP 应用集群的时候,MixPHP 决定推动这项技术的普及,我们定位于众多的中小型企业、创业型公司,我们将 Swoole 的复杂度封装起来,用简单的编码方式呈现给用户,让更多的中级程序员也可打造高并发系统,努力让 Swoole 不再只是高级程序员的专利。


Swoolefy

swoolefy是一个基于swoole实现的轻量级高性能的常驻内存型的API和Web应用服务框架,高度封装了http,websocket,udp服务器,以及基于tcp实现可扩展的rpc服务, 同时支持composer包方式安装部署项目。基于简单易用,swoolefy抽象Event事件处理类, 实现与底层的回调的解耦,支持swoole原生协程,协程实例应用注册,组件依赖注入,全局事件注册,异步任务管理,自定义进程管理,RPC服务,mysql,redis连接池,支持基于自定义进程的redis,rabitmq,kafka的订阅发布,crontab定时任务等等,让更多phper能够高效低成本开发出常驻内存应用服务。


imi

imi

imi 是基于 PHP Swoole 的高性能协程应用开发框架,它支持 HttpApi、WebSocket、TCP、UDP 服务的开发。

在 Swoole 的加持下,相比 php-fpm 请求响应能力,I/O密集型场景处理能力,有着本质上的提升。

imi 框架拥有丰富的功能组件,可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。可以使企业 IT 研发团队的效率大大提升,更加专注于开发创新产品。

文档地址:https://doc.imiphp.com/

QQ群:17916227 点击加群

imi 项目发起人:宇润


Tencent-TSF

Tencent-TSF 腾讯公司推出的PHP协程框架,基于Swoole+PHP Generator实现Coroutine,可以像Golang一样用协程实现高并发服务器。


swoole_framework

swoole_framework基于swoole扩展开发的通用后端服务框架,包含了内置PHP应用服务器、FastCGI、WebSocket、Web框架等丰富的功能特性


LaravelS

LaravelS 基于Swoole加速Laravel/Lumen,常驻内存,内置HTTP/WebSocket Server,支持TCP/UDP Server、自定义进程、异步的事件监听、异步任务队列、毫秒级定时任务、平滑Reload,与Nginx配合搭建高可用分布式服务器群,开箱即用。


open-smf/connection-pool

open-smf/connection-pool 基于Swoole的通用连接池,一般用作数据库连接池。


zphp

zphp一个极轻的的,专用于游戏(社交,网页,移动)的服务器端开发框架.提供高性能实时通信方案。zphp使用swoole作为底层网络通信的框架。


zapi

zapi 基于swoole+generator的http api异步非阻塞轻量级框架,内置mysql、redis、memcached、mongodb全套异步客户端的连接池,内置http异步客户端,近乎同步的写法,却是异步的调用,性能强悍


zhttp

zhttp 基于swoole+generator的异步非阻塞轻量级web框架,内置mysql、redis、memcached、mongodb全套异步客户端的连接池,内置http异步客户端,近乎同步的写法,却是异步的调用,性能强悍


swoole-yaf

swoole-yaf 结合PHP的Yaf框架和Swoole扩展的高性能PHP Web框架


Swoole-Yaf

Swoole-Yaf 将Yaf框架和Swoole扩展提供的HttpServer结合在一起,server和框架高度结合形成超高性能的组合


Swoole-Yaf

ciswoole CodeIgniter 2.2 with Swoole_Http_Server


owl-mvc

owl-mvc 基于 swoole_http_server 的一套PHP MVC框架


hprose/hprose-php

hprose/hprose-php 高性能远程对象调用服务,PHP 版本底层使用 swoole 实现了 http,https,tcp,tcp6,websocket, unix socket 服务器和 tcp,tcp6,unix socket 客户端。


yiiSwoole

yiiSwoole Yii 1.1.16 with Swoole Http_Server,In high-concurrency situations,will be better than php-fpm


Dora-RPC

Dora-RPC 是基础swoole实现的轻量级高性能RPC框架,支持同步/异步调用,拥有有多任务并发及长链接维持特性


Blink

Blink 是一个为构建 “long running” 服务而生的 Web 微型高性能框架,它为构建 Web 应用程序提供简洁优雅的API,尽量的减轻我们的常规开发工作


swPromise

swPromise 基于swoole的PHP promise框架


Aurora

Aurora 是一个建立在 Lightning 之上的高性能高并发框架,为追求极限性能而打造,底层由Phalcon + Swoole组合驱动,适用于需要支持高并发的场景,如API 接口、微服务等。


Group

Group 轻量级框架。基于swoole实现了定时任务,分布式任务队列,异步多进程服务(模拟map-reduce),结合hprose的rpc服务。


Group-co

Group-co 优雅的异步协程框架,支持服务化搭建高并发httpserver,支持分布式使用,详情请戳链接。


FastD

FastD FastD 是一个支持 Swoole 的轻量级 Web 开发框架,可适用于对性能有要求的 API 场景,并且灵活的扩展性可以让开发者们更容易地建造自己的服务 (基于Swoole)


Yii2-Swoole

Yii2-Swoole 支持基于Yii2框架运行于Swoole中,同时可以很简单的支持Swool 1.0与2.0协程,自带mysql,redis连接池,可以使用Yii2的全栈框架来开发HTTP,WebSocket等网络服务。


ultraman

ultraman 结合PHP的Yaf框架和Swoole扩展的高性能PHP 封装成composer 及其容易上手


Lawoole

Lawoole 基于 Laravel 和 Swoole 的高性能 PHP 框架。借助 Swoole 的高性能特点,弥补了 Laravel 的性能缺陷。在大幅提升程序运行速度的情况下,能够使用到绝大部分 Laravel 中优秀的特性。在 Lawoole 中,你可以拥有与 Laravel 一致的开发体验,编写那些富有创造力的代码。


CabalPHP

CabalPHP 基于Swoole的轻量、高效、全异步开源框架,自动生成API接口文档,IDE下有完整的代码提示,相较于其他框架我们有完善的协程数据库和缓存引擎哦!


Fast-Laravel

fast-laravel 基于Swoole的高性能Laravel框架加速扩展。利用Swoole的特性,提升Laravel的响应性能。基本上在无须变更项目代码的前提下使程序从传统的php-fpm运行模式蜕变成常驻内存模式。(初衷是为了提升老项目响应速度,作为过渡。新项目建议用专业的协程框架)

MyQEE 服务器类库

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 基于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 基于Swoole2.0的协程特性写的框架,核心特性:

  1. 实现了简单路由功能的小巧框架,便于开发者使用和扩展,非常具有灵活性
  2. 相比php-fpm或mod_php的方式性能有几十倍左右的提升
  3. 可设置自动加载目录加载目录下的所有php文件(仅一级不支持递归)
  4. 自定义404响应
  5. 支持中间件
  6. redis支持原生同步和协程版本,只需要一个配置参数即可
  7. mysql支持原生同步和协程版本,只需要一个配置参数即可

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 及客户端调用示例


  • 妖逆小雷

    这么多框架选择,都不知道选哪一个来开始好了,有前面探路的人发表下意见么

  • Holand

    easyswoole 闹的最欢

  • Holand

    swoole_framework最经典

  • 清行 ◕‿-。

    好棒啊!列出这么多,省去查找框架的时间啦~

  • 小米南瓜粥

    视频教程太少了。。。

  • 平淡之人

    为啥没有hyperf?

  • 刘晋呈

    swoole确实不错 以后php有更多的用途了 我想学 但是网上基于swoole的框架 有easyswoole swoft 我想选择一个稳定的合适的 真不知道怎么办 韩老大 指点下 对大趋势没有分析透彻 对整体的it界也不了解 但是只知道自己得学习 而且是专一的学习 不求多 只求精 韩老大 指点下 好迷茫 好急切