弹力设计-“隔离设计”

隔离方式

  • 服务的种类
  • 用户

按服务种类分离

34e3b94399f89a825a0046234607f9eb.png

存在的问题

  • 一个查询功能需要调用多个服务,降低性能(响应时间)
  • 大数据平台抽取数据到数据仓库,增加数据合并复杂度
  • 跨服务的流程,单服务故障导致整个流程不可用

按用户请求分离(多租户模式)

a7293c5fe813a7e8e2498aac34c4825e.png

实现方式

  1. 完全独立。每个租户有自己完全独立的服务和数据。
  2. 独立的数据分区,共享的服务。
  3. 共享的服务,共享的数据分区。

对比

  • 0c7cb0d25fb2c65a8db011ba61b8729c.png

隔离设计的重点

  • 服务粒度:需要定义好服务粒度的大小,过大和过小都不好。需要认真的做业务需求和系统分析
  • 均衡:无论是服务还是租户隔离,都要考虑系统的复杂度成本性能资源使用的问题,找到一个合理的均衡方案。
  • 隔离模式需要配置一些高可用、重试、异步、消息中间件、流控、熔断等设计模式的方式配套使用。
  • 自动化运维
  • 监控!监控!监控
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容