分布式微服务设计要求(持续更新)

451 阅读1分钟

从设计方面来保证分布式微服务达到高可用、高性能、高扩展、高稳定的要求

1.数据模型、库表设计

2.整体架构设计(模块的整体架构、内部外部交互机制等)

3.核心流程设计(流程图、时序图、状态图)

4.api设计

5.单元化相关设计(跨机房跨地域)

6.容错设计(业务兜底机制、task自动重跑、续跑)

7.隔离设计(核心和非核心业务隔离、系统功能隔离、task和http请求隔离)

8.兼容设计(修改核心业务应该考虑是否兼容以往业务、是否兼容库表、是否兼容依赖方)

9.大规模存储设计(自动归档、分库分表)

10.可横向扩展设计(任务分片、kafka等组件分区)

11.幂等设计(http请求、定时任务、消息消费等)

12.监控设计(系统、业务监控)

13.安全设计(敏感字段、水平垂直越权问题、轰炸问题、组件、中间件加密密钥valut)

14.降级、熔断、限流设计

15.缓存设计

16.一致性设计

17.高可用、高性能、高扩展、高稳定(低延迟、高吞吐量、QPS、TPS)设计

18.最后当然得是业务和功能设计


这里如果是扩展到了单元化架构(gzone、rzone、czone)应该还要考虑跨机房跨地域后的相关设计

单元化架构这里推荐了一个链接, 个人认为还是说的可以的


  • [ 萱儿AXW ]