微服务架构的缺陷与挑战

微服务架构的陷阱

  服务力度拆分太细  内部复杂度下降,外部复杂度上升

    服务关系复杂

      数据一致性,服务影响的点增加

    团队效率下降 

      团队工作量增加

    定位问题困难

    系统性能下降

      处理链路增加,耗时增加

  基础设施缺乏   服务增加,监控开发运维难度大幅度增加

    无法快速交付

    服务管理困难  

      服务路由

      故障隔离

      服务注册和发现

微服务架构挑战

  数据分布(数据一致性)

    分布式事务

    全局幂等

  服务分布

    接口兼容

    接口循环调用

base理论 最终一致性(基本可用、软状态、最终一致性)

业务级分布式事务

  本地事务消息---发送事务消息,事务消息响应处理

    在接受到响应消息前,发送服务要不断重试

  消息队列事务消息 同上 用队列

  TCC(本质两批次事务提交)

    try confirm cancel

 

全局幂等

  本质  分布式数据只能通过消息来实现最终一致性,而消息可能会丢失,因此需要不断重试,重试就需要保证幂等。

  定义  多次执行的影响均与一次执行的影响相同

  全局幂等  每个幂等操作全局唯一

  设计关键  全局唯一ID 状态机

 

 

 

接口兼容和接口循环调用:微服务通常不能同步升级,因此需要兼容

  接口多版本   传入版本号

  接口逻辑兼容

  循环调用目前难以处理,需要谨慎测试

 

 

  

    

posted on   李某人的窥视  阅读(170)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

统计

点击右上角即可分享
微信分享提示