Mix PHP 是一个基于 Swoole 开发的高性能 PHP 框架,从 2017 年开始通过多年发展收获了不少中小型团队的支持,框架版本也经历了多个版本的迭代:php
本次版本更新主要是增长微服务开发相关的组件与开发骨架,从上一次 Mix V2.1 很是激进的切换为单线程协程后 [[为什么从 Reactor+Manager+Worker 多进程改成单线程协程]](https://zhuanlan.zhihu.com/p/...,Mix V2.2 在微服务方面也很是激进的选择了和其余 Swoole 框架大相径庭的路径:与 go-micro 微服务生态深度集成,借用 golang 微服务生态的治理工具git
在不少 Swoole 框架自建微服务生态的时候,我认为微服务生态要是能与主流生态直接无缝通讯可能更具备实用价值,Mix 从 V2.1 开始彻底切换为单线程协程,这一特性很是适合微服务的打造,同时 Mix 一直都是 Go 风格框架,所以我决定将微服务融入 go-micro 生态,让 Mix 框架用户能与 go-micro 编写的微服务直接代码级无缝通讯,而且能直接使用 go-micro 运行时工具包的网关、代理、Dashboard 等所有微服务治理基础设施,让 PHP 与 Go 能一块儿开发高性能微服务,取长补短。github
基于以上 Mix 打造了可独立使用的 Mix Micro 同时还提供了包含大量代码的 Mix Micro Skeleton 微服务开发骨架。golang
在 gRPC 方面,因为 phpgrpc 官方的局限性致使 PHP 在 gRPC 中一直都是充当 Client 的角色,Mix gRPC 试图改变这一现状,咱们提供了 grpc 官方相似的 protoc 插件,能根据 .proto 直接生成基于 Swoole 的 PHP gRPC Server/Client 代码 (官方只能生成 Client 代码,而且不支持协程),使 PHP 具备与 go-micro 具备一样的微服务编程体验。redis