微服务代码/模块的建议

时间:2017-10-14 11:33:55

标签: spring-boot intellij-idea microservices

我是微服务的新手,正在学习Spring Boot 我有IntelliJ Ultimate,我想知道如何最好地构建我的微服务代码

对于我正在构建的系统,我应该有一些微服务。

  1. 打开包含每个Spring Boot微服务模块的1个IntelliJ

  2. 打开IntelliJ的多个实例,并为每个IntelliJ实例提供一个Spring Boot微服务

  3. 我认为如果我有很多微服务就做2会很棘手,但我不知道IntelliJ是否能够在一个IntelliJ实例中同时运行多个Spring Boot微服务

    有关如何使用微服务代码/项目的任何建议将不胜感激。

2 个答案:

答案 0 :(得分:0)

InteliJ能够同时运行大量Spring Boot微服务/应用程序。即使您在调试模式下运行所有​​微服务,它也不会影响性能。我会选择第一个选项。这是一种方法,我们在我们的项目中使用:

在IntelliJ中启动新项目。 对于每个微服务,在InteliJ中创建新模块。

好处:

  • 如果有人想要在该项目上工作,他可以​​导入一个 项目,并立即导入所有微服务。即使他愿意 只在少数人中工作,他可以​​看看其他人是如何建立的。
  • 在InteliJ中,您可以创建运行配置为" Compaund"。因此,当您想要一次运行所有服务时,只需单击一下即可完成。

但是,如果你有1500名员工,想要全面的netflix方式并创建500个微服务,那么更好的方法是将它们分开:)

答案 1 :(得分:0)

微服务的一个好处是组织可扩展性。您有几个团队同时处理不同的微服务。此外,应该可以自己开发,构建和运行每个微服务。如果你没有这些目标,你将获得微服务的所有复杂性,而且几乎没有什么优势。

在这种情况下,每个微服务都应该存在于自己的版本控制中。只要给出了这个,如果IDE支持每个模块多个版本控制源,请转到2)。否则我猜你必须坚持1)。