Меня зовут Вячеслав Аксенов, я старший бэкенд-разработчик Java/Kotlin на крупном предприятии.
Однажды я оказался в проекте, полном микросервисов, в котором за настройку отвечало что-то вроде Spring Cloud. Чтобы понять, как именно это работает, я исследовал и прикрепил этот странный элемент к одному из своих любимых проектов.
И в этой статье я шаг за шагом покажу вам, как я это сделал.
Точнее, как настроить сервер конфигурации Spring Cloud.
Некоторая справочная информация
В наше время программирование из чего-то магического и загадочного переросло в довольно прозаическое занятие.Создание серверного приложения больше не похоже на построение монолита с локальными прикладными решениями разной степени ясности и волшебства.
Создание собственных велосипедов заменило использование готовых решений, подходящих для конкретных задач.
В настоящее время для серверной части больших систем в качестве основного языка программирования преимущественно используется Java/Kotlin. А там, где есть Java и Enterprise, Spring Framework идет рука об руку.
А поскольку строить монолиты сейчас не модно, выбор сделан в сторону микросервисов.
(мое мнение, что микросервисы делать полностью микро не стоит. Каждый сервис должен решать отдельную бизнес-задачу.
Но об этом я напишу в отдельной статье) А тут еще зоопарк сервисов — у каждого свои конфиги.
И ими нужно как-то управлять.
Вопрос - как это сделать? Так какую проблему решает Spring Cloud? Представим, что у вас есть 5 приложений Java/Spring, каждое из которых при запуске загружает разные конфиги (пароли/адреса для базы данных, внешние API и т. д.).
Существуют разные среды — test, dev, prod, stage и т. д. Spring Cloud позволяет хранить все конфигурации для разных приложений и разных сред в одном месте.
Как его запустить?
Давайте разберемся, как запустить эту систему на простом примере.Есть простое Spring-приложение, которое нужно научить выходить в облако за конфигами.
В моем случае это бот для учета рабочего времени в телеграмме, который я написал для личных целей - вид (что я сделал).
Но код открытый — любой желающий может использовать мой или запустить его самостоятельно.
Вы можете игнорировать бизнес-логику; нас интересует только конфигурация для работы со Spring Cloud.
Настройка сервисной части:
Для этого вам нужно добавить Spring-cloud-starter-config и Spring-cloud-starter-bootstrap в список зависимостей:Вы можете взять последние версии зависимостей с https://search.maven.org/ Пример в pom.xml: https://github.com/v-aksenov/whid-bot/blob/master/pom.xml#L35-L44 Application.properties также заменяется на bootstrap.yml, в котором нужно указать имя текущего приложения и адрес для подключения к облаку Spring.<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-config</artifactId> <version>3.0.5</version> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> <version>3.0.4</version> </dependency>
spring:
Теги: #Сетевые технологии #Разработка сайтов #Микросервисы #java #Kotlin #spring boot #spring #telegram bot #spring cloud
-
Как Конвертировать Mts В Mp4 На Mac
19 Oct, 24 -
Часть Экипажа, Часть Корабля
19 Oct, 24 -
Как Я Писал Интернет-Магазин В 15 Лет
19 Oct, 24