我有几个微服务器相互通信 . 对于一般配置,我使用Spring Cloud Config,效果很好 . 某些服务需要访问遗留系统的数据库资源 . 因此,他们需要知道数据库(多租户环境中的数据库)的位置以及要使用的凭据 .

使用Spring Cloud Config我看到两种可能性:

  • application.properties:这会将数据库设置公开给所有服务 . 没有选择 .

  • my-crazy-service.properties:这样可以正常工作,但我必须配置任何需要db访问的服务 . 不能很好地扩展 .

所以我的想法是实现另一个负责任何连接信息的微服务 . 此服务使用spring-data-rest公开休息 endpoints . 如果服务A想要使用旧数据库,它可以调用新服务并请求所需数据 .

现在我想知道何时最好的时间是从远程服务请求连接信息 . 在启动每个微服务?这样的启动代码应该放在哪里?一般来说,应该在哪里进行初始化工作?