PHP 微服务入门:基于 Hyperf 框架搭建轻量级微服务
一、微服务 VS 单体应用
表格
| 特性 | 单体应用 | 微服务 |
|---|---|---|
| 架构 | 所有功能在一个应用中 | 按业务拆分多个独立服务 |
| 部署 | 整体部署 | 独立部署 |
| 技术栈 | 统一技术栈 | 可异构(PHP/Java/Go) |
| 复杂度 | 低 | 高(服务治理) |
| 适用场景 | 小型项目 / 快速迭代 | 中大型项目 / 高并发 |
二、Hyperf 框架优势
Hyperf 是基于 Swoole 的高性能 PHP 协程框架,适合微服务开发:
协程驱动:高并发、低延迟;
注解驱动:配置简洁,开发效率高;
内置服务治理:服务注册 / 发现、配置中心、熔断降级;
兼容 PSR 标准:易扩展、易集成。
三、微服务搭建步骤
1. 安装 Hyperf
2. 服务拆分
拆分三个核心服务:
用户服务(user-service):处理用户注册、登录、信息查询;
商品服务(goods-service):处理商品管理、库存查询;
订单服务(order-service):处理订单创建、支付、查询。
3. 服务注册与发现(基于 Nacos)
安装 Nacos(配置中心 + 服务注册中心):
Hyperf 集成 Nacos:
配置
config/autoload/nacos.php:
4. 接口调用
订单服务调用商品服务查询价格:
四、服务熔断与降级(Sentinel)
安装 Sentinel 扩展:
配置熔断规则:
使用注解实现熔断: