做网站网站需要注意什么,衡水网站建设最新报价,和平区网站制作,广州产品设计公司有哪些微服务架构6大陷阱 现在微服务的基础设施还是越来越完善了#xff0c;现在基础设施缺乏的问题逐渐被解决了。
拆分粒度太细#xff0c;服务关系复杂 拆分降低了服务的内部复杂度#xff0c;但是提升了系统的外部复杂度#xff0c;服务越多#xff0c;服务和服务之间的连接…微服务架构6大陷阱 现在微服务的基础设施还是越来越完善了现在基础设施缺乏的问题逐渐被解决了。
拆分粒度太细服务关系复杂 拆分降低了服务的内部复杂度但是提升了系统的外部复杂度服务越多服务和服务之间的连接关系越混乱。
拆分粒度太细团队效率下降 拆分粒度太细问题定位困难 不是很好排查问题链路太长了。
拆分粒度太细系统性能下降 基本上接口间的调用包含接口的业务逻辑执行完毕,大概的耗时是50ms以后估计链路的耗时就按照这个估计就好了。
缺乏基础设施无法快速交付 缺乏基础设施服务管理混乱 微服务架构4大挑战
微服务架构示意 左边是微服务架构右边是单体架构
主要区别有两个服务的拆分和数据的拆分
微服务技术挑战 只拆分代码不拆分数据库算不算微服务?
不算。
BASE 理论之最终一致性 一致性是有时间的看你业务的忍受程度
业务级分布式事务-本地事务消息 业务级分布式事务-消息队列事务消息 业务级分布式事务-TCC 全局幂等 全局幂等设计示例-正常处理1 B收到之后先根据全局ID判断状态是不是done如果是done就直接返回如果不是就处理业务。
第4步如果处理业务成功后更新消息状态失败如何应对这种情况?
要用事务来保证比如要同时成功。
全局幂等设计示例-正常处理2 B服务不需要先记录消息了直接同时完成业务和消息的done写入针对这个方案如果2消息丢了那么A服务重发就好了 接口兼容 和 接口循环调用 2这种方式是加if else这样的风险会很高