参考回答
平台采用 Spring Cloud Alibaba 微服务架构,覆盖采购、销售、库存调拨、设备运维和实时状态监控等业务。可从五层介绍:
- 接入层:统一网关处理路由、身份认证、权限校验与流量控制。
- 业务服务层:按业务边界划分采购、库存、调拨、设备监控等服务。
- 中间件层:Nacos 管理注册与配置,Sentinel 进行流量治理,Seata 处理特定跨服务事务,Redis 缓存热点数据,RocketMQ 处理异步业务。
- 数据层:MySQL 承载结构化交易数据,MongoDB 等存储适合文档模型的数据。
- 运维监控层:结合容器部署、日志、监控、告警和故障预案保障稳定性。
核心不是服务数量,而是业务边界、数据归属、故障边界清晰,并控制服务间调用复杂度。
深度追问
- 为什么拆成 20 多个服务,而不是 8 个或 10 个?
- 哪些链路同步执行,哪些可以异步化?
- 如何防止一个服务故障扩散?
回答提醒结合真实服务名、调用链路和部署方式,不要只罗列技术栈。