美文网首页分布式@架构师
业务拆分原则介绍

业务拆分原则介绍

作者: 右耳菌 | 来源:发表于2022-11-19 01:02 被阅读0次

1. 常见的做法

常见的错误做法:

  • 服务拆分粒度越小越好
  • 按照大公司的套路拆分
  • 以代码量为拆分标准

拆分核心三原则:


2. 服务粒度匹配团队规模

服务粒度过细的问题,可以先看下面的两个图

可以看到,服务粒度过多时,虽然单个服务的内容可以减少,但是服务间调用关系的复杂度程指数级的增长,这同样也是很可怕的一件事

如果项目的人员不多,那么划分过多的服务出来时,每个开发人员需要兼顾的单服务就会变得很多,而为了能够正常进行开发,那么就需要同时启动多个服务;对于测试人员来说,要做测试的时候,也需要部署多个环境,测试多个接口;运维人员每次上线都要操作多个接口,并且各个接口之间还存在依赖关系,每次上线都要写一个详细且复杂的上线计划。这样会使得团队的效率急剧下降。

服务拆分过细带来的其他问题:

1.性能下降 => 主要是网络访问上的延迟
2.问题定位难度增加 => 服务过多,问题扩散

最佳实践建议:

开发的时候,三个人恰好能完全理解系统的架构和业务逻辑,两个人容易在遇到问题时各抒己见。

维护期因为需要开发的内容变少,所以两个人是比较好的,而且能确保如果有一个人因为有事没在岗,还有另外的一个人可以顶上的情况,避免无人维护。

3. 演进式拆分

4. 以模型职责拆分(基于业务逻辑为主)

5. 需要关注的点

数据库拆分后数据一致性问题

  • 解决方案
    最终一致性来替代分布式事务

  • 实现方法
    1.可靠事件模式:不断重试
    2.补偿模式:补偿/回滚


如果觉得有收获,欢迎点赞和评论,更多知识,请点击关注查看我的主页信息哦~

相关文章

  • 业务拆分原则介绍

    1. 常见的做法 常见的错误做法: 服务拆分粒度越小越好 按照大公司的套路拆分 以代码量为拆分标准 拆分核心三原则...

  • 微服务的拆分规范和原则

    微服务的拆分规范和原则 拆分方案 压力模型拆分 业务模型拆分--主链路拆分--领域模型拆分--用户群体拆分--前后...

  • 16 高并发之应用拆分

    1️⃣应用拆分实例 2️⃣应用拆分原则 1 业务优先2 循序渐进3 兼顾技术 : 重构 分层4 可靠测试 3️⃣应...

  • 微服务拆分原则

    微服务拆分原则 微服务拆分过程中需严格遵守高内聚、低耦合原则,同时结合项目的实际情况,综合考虑业务领域、功能稳定性...

  • 设计原则

    1.1高并发设计原则 无状态 方便水平扩展。一般是应用无状态,配置文件有状态。 拆分 系统维度:根据业务逻辑拆分(...

  • 排序算法之归并排序

    归并算法简单介绍 归并算法的核心是:先拆分然后再合并。 拆分原则:先将序列折半进行拆分,当子序列只有一个元素时停止...

  • 微服务器的折分

    拆分原则:单一职责、服务粒度适中、考虑团队结构、以业务模型切入、演进式拆分、避免环形依赖和双向依赖根据两个维度来拆...

  • 数据库的垂直拆分和水平拆分

    概念介绍 垂直拆分 垂直拆分就是要把表按模块划分到不同数据库表中(当然原则还是不破坏第三范式),这种拆分在大型网站...

  • 2018-04-23

    康威定律。 几天讨论了一下如何拆分微服务,拆分粒度? 按照单一职责原则和康威定律,在业务域、团队还有技术上平衡粒度...

  • 3.服务如何拆分

    服务拆分的几种方法 纵向拆分(基于业务逻辑拆分)是从业务维度进行拆分。标准是按照业务的关联程度来决定,关联比较密切...

网友评论

    本文标题:业务拆分原则介绍

    本文链接:https://www.haomeiwen.com/subject/fnjvxdtx.html