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

72 записи с тегом "Reactive"

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

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

1. Введение

В этой статье мы рассмотрим новые функции среды Spring Security 5 для защиты реактивных приложений. Этот выпуск соответствует Spring 5 и Spring Boot 2.

В этой статье мы не будем вдаваться в подробности о самих реактивных приложениях, которые являются новой функцией фреймворка Spring 5. Обязательно ознакомьтесь со статьей Введение в Reactor Core для получения более подробной информации.

2. Настройка Мавена

Мы будем использовать стартеры Spring Boot для начальной загрузки нашего проекта со всеми необходимыми зависимостями.

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

1. Введение

В этом руководстве мы рассмотрим параллелизм в реактивных программах, написанных с помощью Spring WebFlux .

Мы начнем с обсуждения параллелизма в отношении реактивного программирования. После этого мы рассмотрим, как Spring WebFlux предлагает абстракции параллелизма для различных библиотек реактивного сервера.

2. Мотивация реактивного программирования

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

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

1. Обзор

В этом руководстве мы рассмотрим различные стратегии, доступные для обработки ошибок в проекте Spring WebFlux , и рассмотрим практический пример.

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

2. Настройка примера

Настройка Maven такая же, как и в нашей предыдущей статье , в которой представлено введение в Spring WebFlux.

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

1. Обзор

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

Например, мы можем захотеть сделать это при извлечении данных из нескольких источников или когда мы просто хотим повысить производительность нашего приложения.

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

2. Резюме по реактивному программированию

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

1. Обзор

Spring 5 включает Spring WebFlux, который обеспечивает поддержку реактивного программирования для веб-приложений.

В этом руководстве мы создадим небольшое реактивное приложение REST, используя реактивные веб-компоненты RestController и WebClient.

Мы также рассмотрим, как защитить наши реактивные конечные точки с помощью Spring Security.

2. Весенний фреймворк WebFlux

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

1. Введение

AWS предлагает множество сервисов через многочисленные API-интерфейсы, к которым мы можем получить доступ из Java, используя их официальный SDK. Однако до недавнего времени этот SDK не предлагал поддержку реактивных операций и имел лишь ограниченную поддержку асинхронного доступа.

С выпуском AWS SDK для Java 2.0 мы теперь можем использовать эти API в полностью неблокирующем режиме ввода-вывода благодаря принятию стандарта Reactive Streams.

В этом руководстве мы рассмотрим эти новые функции, реализуя простой REST API хранилища BLOB-объектов в Spring Boot, который использует известную службу S3 в качестве серверной части хранилища.

2. Обзор операций AWS S3

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

1. Обзор

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

И, учитывая, что Reactive Streams набирает популярность в последние годы, полезно знать, как мы можем эффективно выполнить эту задачу.

Давайте начнем с настройки проекта с использованием реактивного стека, чтобы понять, почему это часто вызывает проблемы.

2. Сценарий с ошибками

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

1. Обзор

В этой статье мы рассмотрим платформу Lagom и реализуем пример приложения с использованием реактивной архитектуры, управляемой микросервисами.

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

Под архитектурой, управляемой микросервисами, мы подразумевали разделение системы на границы между совместными сервисами для достижения таких целей , как изоляция , автономия , единая ответственность , мобильность и т. д . Дополнительные сведения об этих двух концепциях см . в The Reactive Manifesto и Reactive Microservices Architecture .

2. Почему Лагом?

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

1. Введение

Reactor Core — это библиотека Java 8, реализующая модель реактивного программирования. Он построен на основе спецификации Reactive Streams , стандарта для создания реактивных приложений.

На фоне нереактивной Java-разработки переход на реактивную может оказаться довольно сложной кривой обучения. Это становится более сложным при сравнении его с Stream API Java 8, поскольку они могут быть ошибочно приняты за одни и те же высокоуровневые абстракции.

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

2. Спецификация реактивных потоков

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

1. Обзор

В этом руководстве мы узнаем, как использовать клиент Reactive HTTP от Jetty . Мы продемонстрируем его использование с различными библиотеками Reactive, создав небольшие тестовые примеры.

2. Что такое реактивный HttpClient ?

HttpClient Jetty позволяет нам блокировать HTTP-запросы. Однако когда мы имеем дело с реактивным API, мы не можем использовать стандартный HTTP-клиент. Чтобы восполнить этот пробел, Jetty создала оболочку для API HttpClient , чтобы она также поддерживала API ReactiveStreams .

Реактивный HttpClient используется либо для потребления, либо для создания потока данных через HTTP-вызовы.