11月23, 2020

我们如何成功实现微服务迁移?

Picnic前一段时间进行了微服务迁移。迁移与技术团队的成长几乎同时发生,以前的单一技术团队被分成了专门的产品团队。

事实上,在我们的案例中有以下三方面改变:

  • 员工被重新组织到不同产品团队中

  • 代码被分割到不同的 git 仓库中

  • 应用部署的粒度更细

迁移后一开始,每个产品团队维护大约一个微服务。但公司一直在成长,随着成长业务范围也越来越广。因此,我们开始发现更多的业务分解机会。我们自己的Jakob曾经写过涉及到的原则,但是这个过程看起来是什么样的呢?

定义用例

我们的研究案例是Picnic的Runner应用,我们的驾驶员在旅途中使用它来接收导航指令,管理从客户那里取到的可回收物品,此外它为我们的客户提供ETA等附加功能。应用程序开发工作始于2018年,自此以后,“附加功能”部分显著增长,其中一个值得注意的附加功能是一项安全功能,我们从我们的Runners(送货车辆驾驶员)那里收集GPS和加速度数据,并据此为他们提供驾驶反馈。

通过审视Runner应用程序的后端架构,我们意识到我们原本简洁的服务现在有了另外一个功能。一方面,我们实现了最初的功能,即旅途状态管理和用户交互管理。另一方面,我们围绕各种传感器数据开发了一些重要的功能,这些功能统称为“遥测”。

点击查看原文>

本文链接:https://blog.jnliok.com/post/9Qyka7Dh0IjpJK3JRSNv.html

-- EOF --

Comments