我有一个整体式Spring Boot应用程序,它公开了REST API /getUserList
。
现在我们采用微服务方法,以便我们提取了一些业务代码并创建了/getCountry
微服务REST API。
通常,/getUserList
应该呼叫/getCountry
以获取所有国家。
现在出于测试目的,我想在同一台服务器上分别使用这两个REST API。我能想到的是创建两个单独的JAR,然后让另一个调用。我想知道什么是正确的方法:
我应该将/getCountry
列为/getUserList
的模块吗?还是应该创建一个单独的项目?
您决定将自己的整体拆分为微服务。您从右脚开始,根据您定义的有限上下文分离了应用程序逻辑。在这种情况下,您将描述“国家”上下文和“用户”上下文。
微服务可独立部署,因此您是正确的,它们必须是单独的jar。
通常,每个微服务都有自己的存储库(项目),因此必须使用该服务的开发人员无需熟悉大型代码库,也无需弄清楚为什么与他们的服务无关的代码(有界上下文)是那里。
话虽如此,如果您当前的项目很小,您可以决定将它们保留为同一项目下的不同模块(不要在用户模块中导入国家/地区的模块),然后再将其破坏。