如何构建一个单片应用程序(sinatra),旨在将组件移动到微服务架构

时间:2015-10-10 22:22:27

标签: sinatra microservices transitions

我将帮助构建一个应用程序(很明显),我当时正考虑采用微服务架构,但在考虑它时,现阶段没有必要,但将来会是这样。

那么,我如何构建应用程序,但打算将子组件移动到微服务中?

我应该遵循哪些概念或结构,以便将来的转型变得更容易?

我应该注意什么?

如果我不注意它们,任何可能会使转换变得更难的问题或事情会发生吗?

任何其他有用的东西也要知道,谢谢你。

P.S。是的,这可能有点模糊/广泛,但我不是要求深入回答,只是链接到对我有帮助的有用信息。我看过但从单片到微服务架构的过渡中找不到任何有用的东西。

编辑:由于显然不清楚,让我说我正在寻找资源,我会得到一些自以为是,但那很好,自以为是的资源比没有我现有的资源更好。

一些指导>没有指导。

1 个答案:

答案 0 :(得分:1)

我不认为有很多资源直接为您准备微服务架构。至少不是我所知道的。我能想到的最接近的是Eric Evans的Domain Driven Design书。

它更像是一本软件设计书,但在我看来,微服务实际上只是一种模仿软件设计的架构。它是将应用程序的关注点分离到不同分类组件的尝试。

最有用的概念可能是微服务架构的有界上下文和服务对象。有界上下文是服务应该作用域的子级域,服务对象将是实际的服务对象。这些服务对象应松散耦合,以便无缝迁移到微服务。

最后,在迁移到微服务架构期间,服务对象可以转换为类似客户端的对象,将对话间通信协议抽象为给定服务。希望这有帮助!