我可以看到维护功能互不独立的许多微服务所花费的时间。客户端,队列,路由器...满足概念上简单的项目的需求可能并不需要很多东西。将多个微服务合并到一个整体中的不利之处是什么?如果项目本身是大多数微服务的唯一使用者,我认为对大型应用程序进行分区只是在浪费时间,原因是在不合适的情况下遵循假定的良好做法。
答案 0 :(得分:0)
微服务提供了一组指导方针,可帮助您构建易于扩展,更可用的应用程序,并使您的团队能够真正快速地进行更改。 话虽如此,它并不能真正关闭您在构建东西时要遵循的整体结构或任何其他准则的门。
在某些情况下,构建整体确实是更好的选择。 假设您是从新事物开始的,那么您的领域知识就不好了。将您的应用程序分解为服务将变得非常困难。需要深入了解域,才能将服务分成有效的较小独立块。
第二种可能是您正在执行POC或MVP(计划测试水域),然后也许可以将所有内容构建为一个。
通过微服务,就像我说的那样,您可以获得规模,可用性,可维护性和进行更改的速度。在某些项目中,这些并不是您真正关心的问题,如果没有,您可以远离它。
最后,对于微服务,您需要有扎实的开发人员。您需要CI / CD管道,需要监视,集中式日志记录等,因为请相信我,您将需要它来调试东西。这确实是一笔巨大的投资,您应该考虑自己正在进入什么以及为什么进入。 您不应该仅仅因为其他每个人都在使用它。