项目特点
微服务拆分按领域拆分为 6 个 gRPC 服务 + 商城 BFF + 后台管理
服务发现Consul 注册与发现,gRPC 跨服务调用
异步消息RabbitMQ 承载订单、支付、库存之间的消息事件
可观测性Prometheus、Grafana、Jaeger、Loki 开箱即用
一键启动make up 拉起整套环境与监控组件
多形态部署Docker Compose、多服务器手动部署、Kubernetes Kustomize
架构总览
用户 / 浏览器
Traefik 网关 :80
↓
shop 商城 BFF :8097
admin 后台管理 :9099
↓ gRPC discovery
user :50051
goods :50052
cart :50053
order :50054
inventory :50055
payment :50056
↓
PostgreSQL
Redis
Elasticsearch
RabbitMQ
Consul
快速开始
git clone git@github.com:arixbit/kratos-shop.git cd kratos-shop make up
make up 会通过 deploy/docker-compose.yml 一次性启动全部 8 个服务与基础设施;手动启动、多服务器部署见
README。
可观测性与辅助组件
Prometheus / Grafana
8 个服务指标(9101-9108)自动抓取,Grafana 预置 Prometheus 与 Loki 数据源。
Jaeger
分布式链路追踪,查看一次请求在多个微服务之间的调用链与耗时。
RabbitMQ
订单/支付/库存之间的异步消息队列,管理台可直接查看队列与积压。
Loki + Promtail
容器日志自动采集,在 Grafana Explore 中按 container / service 标签查询。
演示账号
| 角色 | 手机号 | 密码 |
|---|---|---|
| 普通用户 | 13800138000 | 12345678 |
| 管理员 | 13501167215 | 12345678 |
支付服务当前为本地模拟(channel: mock),不会发起真实扣款。