Введение в Spring Cloud

Spring Cloud - это библиотека с открытым исходным кодом, которая предоставляет инструменты для быстрой разработки приложений на основе JVM для облака. Позволяет приложениям подключаться к различным сервисам. Spring Cloud позволяет разработчикам быстро создавать различные приложения и сервисы, которые могут реализовывать общие схемы, такие как интеллектуальная маршрутизация, состояние кластера, распределенные сеансы, глобальные блокировки, управление конфигурацией шины управления и т. Д. В распределенных системах. Они могут легко работать в любой среде, от ваших обычных ПК до различных управляемых платформ. Таким образом, его можно распространить на любую другую облачную платформу.

Особенности Spring Cloud

Spring Cloud обеспечивает лучший опыт и расширяемый механизм, чем другие. Основные особенности Spring Cloud:

  • Распределенная конфигурация
  • Распределенный обмен сообщениями
  • сервисные звонки
  • Предохранители
  • Глобальные замки
  • Служба регистрации
  • Сервис Discovery
  • Балансировка нагрузки
  • Состояние кластера
  • Маршрутизация

Почему мы должны требовать Spring Cloud?

При разработке распределенных микросервисов с использованием Spring Boot мы сталкиваемся со следующими проблемами:

  • Проблемы с производительностью . Различные эксплуатационные накладные расходы плохо влияют на производительность.
  • Сложность в развертывании: требуются навыки DevOps.
  • Резервирование. Распределенная система часто сталкивается с проблемами резервирования.
  • Балансировка нагрузки: распределение нагрузки по различным вычислительным ресурсам улучшено с помощью балансировки нагрузки.
  • Сложности распределенной системы. Сложности включают проблемы пропускной способности, проблемы сети, проблемы безопасности, задержки и т. Д.
  • Инструменты каталогов служб. Эти инструменты позволяют процессам и службам в одном кластере взаимодействовать друг с другом.

Как это работает?

Ниже приведено объяснение того, как работает Spring Cloud:

  • Конфигурация Spring Cloud предоставляет клиентскую и серверную поддержку для различных конфигураций в распределенных системах.
  • Он предоставляет централизованную платформу для управления различными свойствами для всех приложений в разных средах.
  • Концепция сервера и клиента одинаково сопоставляется с абстракциями Property Source и приложениями Spring.
  • Они корректно работают с приложениями Spring и могут использоваться с различными приложениями на любом языке.
  • Он позволяет вам управлять и настраивать все среды, когда приложения проходят через конвейеры развертывания от разработки до тестирования.
  • Он также обеспечивает все потребности приложений при их переносе.
  • Добавить и подключить альтернативные реализации с помощью Spring Cloud Config очень просто.
  • Приложения Spring Boot spring.cloud.config.uri ie http://localhost:8888/ значению по умолчанию spring.cloud.config.uri ie http://localhost:8888/ пока Spring Config Client и Spring Boot Actuator не окажутся в пути к классам.
  • Вы можете изменить value spring.cloud.config.uri по умолчанию. value spring.cloud.config.uri может быть установлено в bootstrap.(yml | properties) или в системных свойствах.

Код:

@Configuration
@EnableAutoConfiguration
@RestController
public class DemoApplication (
@Value("$(config.name)")
String str = "Cloud";
@RequestMapping("/")
public String new() (
return "Spring " + str;
)
public static void main(String() args) (
SpringApplication.run(DemoApp.class, args);
)
)

  • Локальная конфигурация или удаленный сервер конфигурации могут предоставить значение для имени.
  • Вы можете попробовать запустить свой собственный сервер, используя spring-cloud-config-server.
  • Чтобы запустить приложение через порт 8888, вы можете установить spring.config.name=configserver а затем данные spring.config.name=configserver из примеров репозиториев.
  • Чтобы найти необходимые данные конфигурации, вам может понадобиться spring.cloud.config.server.git.uri

Настройка Spring Cloud

Ниже приведены следующие шаги:

Шаг 1. Откройте веб-сайт https://start.spring.io/ и выберите

Шаг 2: Выберите Spring Boot 1.4.X.

Шаг 3: Артефакты должны быть установлены в «config».

Шаг 4: Добавьте модуль сервера конфигурации из раздела зависимостей.

Шаг 5: Нажмите кнопку «Создать», чтобы загрузить предварительно настроенный проект, содержащий ZIP-файл.

Шаг 6: Вы также можете создать проект Spring Boot, добавив зависимости в файл POM вручную.

Шаг 7: Эти зависимости могут быть разделены между всеми проектами.

Код:


org.springframework.boot
spring-boot-starter-parent
1.4.0.RELEASE


org.springframework.boot
spring-boot-starter-test
test


org.springframework.cloud
spring-cloud-dependencies
Brixton.SR5
pom
import



org.springframework.boot
spring-boot-maven-plugin

Шаг 8: Зависимости для «config server» ниже:

Код:


org.springframework.cloud
spring-cloud-config-server

Шаг 9: Класс Application должен быть добавлен со следующим, чтобы включить Config Server, как упоминалось в предыдущем примере:

Код:

@SpringBootApplication
@EnableConfigServer
public class DemoApplication (

)

Шаг 10: «Свойства приложения» должны быть добавлены в src / main / resources.

Код:

server.port = 8888
spring.application.name = config
spring.cloud.config.server.git.uri = file://$(user.home)/application-config

Шаг 11: Параметр Uri является одним из наиболее важных параметров для «сервера конфигурации».

Шаг 12. В Windows параметр Uri обычно добавляется в относительный путь, который разрешается в C:\users\\. And on Linux, it is /users//. C:\users\\. And on Linux, it is /users//.

Шаг 13: Все файлы свойств для различных приложений хранятся в указанном выше репозитории Git.

Шаг 14: Затем необходимо добавить папку «application-config» в папку cloud.config.server.git.uri.

Шаг 15: Перейдите в эту папку с помощью команды 'cd' и введите git init.

Шаг 16. Теперь будет запущен Git-репозиторий, который позволит вам хранить и отслеживать ваши файлы.

Шаг 17: Запустите сервер конфигурации, чтобы проверить, работает ли он.

Шаг 18: Введите mvn spring-boot: run в командной строке, чтобы запустить сервер.

Шаг 19: Следующий вывод будет рассматриваться как указание для успешного запуска сервера:

Tomcat started on port(s): 8888 (http)

Шаг 20: Сервер конфигурации управляет свойствами приложения на серверах.

Шаг 21. На серверах свойства каждого приложения должны быть настроены таким образом, чтобы они могли общаться с сервером.

Шаг 22: Этот процесс является процессом начальной загрузки. Каждое из приложений должно иметь файл с именем properties.

Шаг 23: Он содержит свойства, аналогичные свойствам приложения, с небольшими отличиями.

Шаг 24: Свойства изначально загружаются родительской пружиной, называемой Application Context.

Шаг 25. Как это важно, сервер конфигурации запустит управление свойствами свойств.

Шаг 26: Контекст приложения также расшифрует зашифрованные свойства.

Шаг 27: Эти свойства должны быть различны.

Шаг 28: Свойства запускают сервер конфигурации и готовят его.

Шаг 29: Свойства указывают свойства для вашего приложения.

Шаг 30: Технически свойства приложения также могут быть размещены в свойствах.

Шаг 31: Хотя серверы конфигурации отвечают за управление свойствами приложения, нам все равно понадобятся свойства, так как они доступны в качестве значений по умолчанию и недоступны на серверах конфигурации.

Вывод

Различные части Spring Cloud могут быть объединены в функциональное приложение Microservice. Это базовая платформа, которая позволяет создавать различные сложные приложения. Spring Cloud позволяет создавать мощные облачные приложения. Все проблемы, с которыми сталкиваются распределенные среды, решаются с помощью Spring Cloud.

Рекомендуемые статьи

Это руководство к Что такое Spring Cloud? Здесь мы обсуждаем особенности, его требования, как это работает и пошаговую настройку Spring Cloud. Вы также можете просмотреть другие наши статьи, чтобы узнать больше-

  1. Что такое Spring Boot?
  2. Что такое Salesforce Sales Cloud?
  3. Что такое дефект?
  4. Что такое Git Branch?
  5. Компоненты Spring Cloud