Spring Boot - zarządzanie specyficznymi konfiguracjami klientów

0

Hej,

Czy podzielilibyście się Waszymi przemyśleniami/doświadczeniami odnośnie konfigurowania aplikacji spring boot-owej. Jak to najlepiej/najprościej Waszym zdaniem zrobić, aby ta sama aplikacja uruchamiała się na AWS lub Azure z różnymi konfiguracjami klienta? Czy przykładowo dla każdego z tych klientów warto tworzyć osobny profil? Czy może macie o wiele lepsze pomysły?

Z góry dzięki za wszystkie opinie, a już szczególnie te pochodzące z własnego doświadczenia.

1

Ja bym raczej miał jakieś wewnętrzne repo z application.properties dla każdego klienta i deployment z CI brałby sobie odpowiedni konfig.
Alternatywnie można też mieć jakąś bazę danych / key value store, z konfiguracjami per klient.

2

A jak będziesz chciał zarządzać tymi konfiguracjami?
Czy zmiana propertasa może wymagać restartu aplikacji?

Jeśli jakaś adminka, to można trzymać w bazie albo jakimś Consulu - wtedy potencjalnie może nie być wymagany restart aplikacji, tylko cache. Gorzej, jak te propertiesy są używane do konfiguracji beanów springowych, np. klientów HTTP, wtedy możesz użyć zewnętrzny Config Service.

https://cloud.spring.io/spring-cloud-config/reference/html/
https://www.consul.io/api/kv.html
https://cloud.spring.io/spring-cloud-consul/2.1.x/multi/multi_spring-cloud-consul-config.html

1 użytkowników online, w tym zalogowanych: 0, gości: 1