微服务落地实践之填坑之法


微服务落地实践之填坑之法

  • 数据库层


    微服务落地实践之填坑之法


  • 伪服务

1. 简单DAO层封装,不包含公共业务封装业务逻辑分散,复制、粘贴,  —个小需求n次初改和测;

2.缓存丢在调用方,业务方需要关注存储(用户侧、后台侧)

微服务落地实践之填坑之法

怎么办?

微服务落地实践之填坑之法

58速运微服务落地实践-数据拆分

1.数据双写 2.平滑迁移,不影响线上业务 3.数据一致性

微服务落地实践之填坑之法

58速运微服务落地实践 – 数据拆分

数据双写(从订单库中迁移出用户回访记录为例)

微服务落地实践之填坑之法

58速运微服务落地实践 – 数据拆分

并发情况,双写中的delete操作

正常:如果记录未迁移到新库中,只删除旧库记录即可;否则新、旧库都执行删除操作;

微服务落地实践之填坑之法

58速运微服务落地实践 – 数据拆分

并发情况,双写中的delete操作

潜在问题:回访服务新库中,会多出—些记录(该删除,却没有删除掉)

58速运实践:每隔n分钟,校验n分钟前进行迁移的数据,是否在新库中有且旧库中没有存在该情况,则删除新库中的记录;

58速运微服务落地实践 – 数据拆分

并发情况,双写中的insert操作

微服务落地实践之填坑之法

微服务落地实践之填坑之法

微服务落地实践之填坑之法

58速运微服务落地实践 – 伪服务改造

1.统—业务下沉为服务2.统——个订单服务

微服务落地实践之填坑之法

58速运微服务落地实践 – 服务改造

串行同步数据,性能问题

微服务落地实践之填坑之法

58速运微服务落地实践 – 服务改造

异步化&ES

微服务落地实践之填坑之法

总结

  • 存在问题

耦合合度高、伪服务

58速运微服务落地实践

1.业务梳理;  2.沟通推进;

  • 数据平滑迁移:

1.双写校验;

  • 服务改造:

1.统—业务下沉为服务, —个地方改动即可;

2.不要为小概率事件,影响整体;

3.数据最终—致性实践;

原文始发于微信公众号(二进制跳动):微服务落地实践之填坑之法

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/167084.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!