Перейти к основному содержимому

51 запись с тегом "Architecture"

Посмотреть все теги

· 7 мин. чтения

1. Обзор

В этом руководстве мы узнаем о шаблонах Model View Controller и Model View Presenter. Мы также обсудим различия между ними.

2. Шаблон проектирования и архитектурный шаблон

2.1. Архитектурный образец

· 7 мин. чтения

1. Введение

В этом руководстве мы поговорим о зондах Kubernetes и продемонстрируем, как мы можем использовать HealthIndicator Actuator для получения точного представления о состоянии нашего приложения. **** **[](https://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/actuate/health/HealthIndicator.html)**

Для целей этого руководства мы предполагаем, что у нас уже есть опыт работы с Spring Boot Actuator , Kubernetes и Docker .

2. Зонды Kubernetes

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

· 5 мин. чтения

1. Обзор

В этом уроке мы увидим, как выбор лидерства с Consul помогает обеспечить стабильность данных. Мы предоставим практический пример того, как управлять распределенной блокировкой в параллельных приложениях.

2. Что такое консул?

Consul — это инструмент с открытым исходным кодом, который предоставляет реестр служб и обнаружение на основе проверки работоспособности. Кроме того, он включает в себя графический веб-интерфейс пользователя (GUI) для просмотра и простого взаимодействия с Consul. Он также охватывает дополнительные возможности управления сеансами и хранилища ключей-значений (KV).

В следующих разделах мы сосредоточимся на том, как мы можем использовать управление сеансами Consul и хранилище KV для выбора лидера в приложениях с несколькими экземплярами .

· 4 мин. чтения

1. Обзор

Микросервисы стали популярны в последние годы. Одной из важнейших характеристик микросервисов является их модульность, изоляция и простота масштабирования. Микросервисы должны работать вместе и обмениваться данными. Для этого мы создаем общие объекты передачи данных, называемые DTO.

В этой статье мы представим способы совместного использования DTO между микросервисами.

2. Предоставление объектов домена как DTO

Модели, представляющие домен приложения, управляются с помощью микросервисов. Модели предметной области — это разные задачи, и мы отделяем их от моделей данных на уровне DAO.

· 4 мин. чтения

1. Обзор

До сих пор в нашем облачном приложении мы использовали шаблон шлюза для поддержки двух основных функций.

Во-первых, мы изолировали наших клиентов от каждой службы, устранив необходимость в поддержке разных источников. Затем мы реализовали поиск экземпляров сервисов с помощью Eureka.

В этой статье мы рассмотрим, как использовать шаблон Gateway для получения данных из нескольких служб с помощью одного запроса . Для этого мы собираемся внедрить Feign в наш шлюз, чтобы помочь писать вызовы API для наших сервисов.

Чтобы узнать, как использовать клиент Feign, ознакомьтесь с этой статьей .

Spring Cloud теперь также предоставляет проект Spring Cloud Gateway , который реализует этот шаблон.

· 7 мин. чтения

1. Введение

В этой статье мы рассмотрим интересный пример с JHipster — построение простой архитектуры микросервисов. Мы покажем, как собрать и развернуть все необходимые компоненты, и в итоге у нас будет полноценное микросервисное приложение, работающее и работающее.

Если вы новичок в JHipster, ознакомьтесь с нашей вводной статьей , прежде чем приступить к изучению основ этого инструмента для создания проектов.

2. Монолитный и микросервисный

В нашей первой статье мы показали, как создать и запустить монолитное приложение, которое относительно легко поддерживать.

· 4 мин. чтения

1. Введение

Эта статья о Structurizr, инструменте, обеспечивающем программный подход к архитектурным определениям и визуализациям на основе модели C4 .

Structurizr отказывается от традиционных подходов перетаскивания в редакторах архитектурных диаграмм, таких как UML, и позволяет нам описывать наши архитектурные артефакты с помощью инструмента, который мы знаем лучше всего: Java.

2. Начало работы

Для начала добавим зависимость structurizr-core в наш pom.xml:

· 7 мин. чтения

1. Обзор

В распределенных архитектурах приложениям обычно необходимо обмениваться данными между собой. С одной стороны, это можно сделать, общаясь напрямую друг с другом. С другой стороны, для достижения высокой доступности и устойчивости к разделам, а также для ослабления связи между приложениями подходящим решением является обмен сообщениями.

Таким образом, мы можем выбирать между несколькими продуктами. Apache Foundation предоставляет ActiveMQ и Kafka, которые мы сравним друг с другом в этой статье.

2. Общие факты

2.1. Активный МК

· 11 мин. чтения

1. Обзор

В нашей предыдущей статье мы уже реализовали бессерверное приложение с полным стеком на AWS, используя API Gateway для конечных точек REST, AWS Lambda для бизнес-логики, а также DynamoDB в качестве базы данных.

Однако развертывание состоит из множества ручных шагов, которые могут стать неудобными с ростом сложности и количества сред.

В этом руководстве мы обсудим, как использовать модель бессерверных приложений AWS (SAM), которая обеспечивает описание на основе шаблонов и автоматическое развертывание бессерверных приложений в AWS .

Подробно рассмотрим следующие темы:

  • Основы модели бессерверных приложений (SAM), а также базового CloudFormation
  • Определение бессерверного приложения с использованием синтаксиса шаблона SAM
  • Автоматическое развертывание приложения с помощью CloudFormation CLI

· 7 мин. чтения

1. Обзор

В этой статье будут рассмотрены некоторые важные шаблоны корпоративной интеграции (EIP), поддерживаемые Apache Camel. Шаблоны интеграции помогают, предоставляя решения для стандартизированных способов интеграции систем.

Если вам нужно сначала ознакомиться с основами Apache Camel, обязательно посетите эту статью , чтобы освежить в памяти основы.

2. О EIP

Шаблоны корпоративной интеграции — это шаблоны проектирования, направленные на решение проблем интеграции. Camel предоставляет реализации для многих из этих шаблонов. Чтобы увидеть полный список поддерживаемых шаблонов, перейдите по этой ссылке .