Получить свойства любого сервиса с сервера конфигурации весны - PullRequest
0 голосов
/ 08 января 2020

Используя свойства конфигурации Spring Cloud, можно определить свойства для разных сервисов и разных сред, например, используя собственный профиль, мы можем иметь следующее дерево на сервере:

resources
  config
    service-a
      service-a-local.properties
      service-a-test.properties
    service-b
      service-b-local.properties
      service-b-test.properties

и иметь клиентские сервисы, загруженные с конфигурацией из сервер, используя одну из доступных опций, например @Value annotations et c. Это, однако, будет видеть только срез свойств с сервера конфигурации для вызывающей службы (или любого другого используемого spring.application.name).

Как service-a может динамически получать доступ к свойствам service-b (или любой другой службы)? Локатор источника свойств по умолчанию использует "/{name}/{profile}" путь для запросов на выборку. Я полагаю, что можно реструктурировать всю конфигурацию и поместить свойства всех служб в один файл для каждой среды, используя некоторое соответствующее соглашение об именах для свойств (например, используя имя службы в качестве префикса), а затем явно префиксировать ссылки на свойства вызывающего сайта с помощью этот префикс, но есть ли другой / более элегантный вариант перед использованием альтернативы discovery / me sh?

...