我有一个微服务架构,需要一些公共逻辑。什么时候需要创建一个自定义的spring Boot starter,而不是创建一个新的微服务?
hzbexzde1#
根据我的经验,从头开始创建一个新的微服务通常是为了防止任何巨石的出现。微服务通常应该有一个工作,然后把它做好。你不想通过添加不相关的操作来混淆微服务的实现和目的。有许多设计模式可以用来创建“类型”,但我不会在这里进行太多的详细讨论。总的来说,根据您要解决的业务目的,您可以选择您的设计并开始开发。不同的设计应该分开,而不是组合成单一的风格。下面是一篇展示设计选项的好文章:https://www.openlegacy.com/blog/microservices-architecture-patterns/如果你发现你自己必须重新创建多个微服务来服务不同的用例,你可以利用一个工具,比如Yeoman来加速创建这些新项目。您可以构建一个生成器,它将为您提供一个工作模板,这样您就不必在每次需要不同服务时都花费时间从头开始开发。以下是我最近写的关于创建自己的自耕农生成器的指南:https://medium.com/@dylanlamott/building-a-yeoman-generator-line-by-line-6966debb39a3
1条答案
按热度按时间hzbexzde1#
根据我的经验,从头开始创建一个新的微服务通常是为了防止任何巨石的出现。微服务通常应该有一个工作,然后把它做好。你不想通过添加不相关的操作来混淆微服务的实现和目的。
有许多设计模式可以用来创建“类型”,但我不会在这里进行太多的详细讨论。总的来说,根据您要解决的业务目的,您可以选择您的设计并开始开发。不同的设计应该分开,而不是组合成单一的风格。下面是一篇展示设计选项的好文章:https://www.openlegacy.com/blog/microservices-architecture-patterns/
如果你发现你自己必须重新创建多个微服务来服务不同的用例,你可以利用一个工具,比如Yeoman来加速创建这些新项目。您可以构建一个生成器,它将为您提供一个工作模板,这样您就不必在每次需要不同服务时都花费时间从头开始开发。
以下是我最近写的关于创建自己的自耕农生成器的指南:https://medium.com/@dylanlamott/building-a-yeoman-generator-line-by-line-6966debb39a3