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

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

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

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

1. Обзор

Часто полезно использовать код состояния из ответа HTTP, чтобы определить, что приложение должно делать дальше с данным ответом.

В этом руководстве мы рассмотрим, как получить доступ к коду состояния и тексту ответа, возвращаемому из запроса REST, с помощью WebClient WebFlux.

WebClient был представлен в Spring 5 и может использоваться для асинхронного ввода-вывода при вызове служб RESTful.

2. Вариант использования

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

1. Обзор

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

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

2. Зависимость от Maven

Давайте добавим в наш проект зависимость Spring WebFlux, чтобы мы могли создавать реактивные потоки:

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

1. Введение

API Java Flow был представлен в Java 9 как реализация спецификации Reactive Stream.

В этом руководстве мы сначала исследуем реактивные потоки. Затем мы узнаем о его связи с RxJava и Flow API.

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

Реактивный манифест представил Reactive Streams, чтобы указать стандарт для асинхронной обработки потоков с неблокирующим противодавлением.

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

1. Обзор

RxJava — популярная библиотека для создания асинхронных программ и программ, основанных на событиях. Она черпает вдохновение из основных идей, выдвинутых инициативой Reactive Extensions .

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

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

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

Мы будем использовать данные, опубликованные из общедоступного REST API www.metaweather.com — для расчета продолжительности дневного света и RxJava с Vert.x , чтобы сделать это чисто реактивным способом. ``

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

1. Введение

В этой статье мы объясним, как Spring WebFlux взаимодействует с аннотацией @Cacheable . Во-первых, мы рассмотрим некоторые распространенные проблемы и способы их избежать. Далее мы рассмотрим доступные обходные пути. Наконец, как всегда, мы приведем примеры кода.

2. @Cacheable и реактивные типы

Эта тема еще относительно новая. На момент написания этой статьи не было полной интеграции между @Cacheable и реактивными фреймворками. Основная проблема заключается в отсутствии неблокирующих реализаций кеша (API кеша JSR-107 блокирует). Только Redis предоставляет реактивный драйвер.

Несмотря на проблему, о которой мы упоминали в предыдущем абзаце, мы по-прежнему можем использовать @Cacheable в наших методах обслуживания. Это приведет к кэшированию наших объектов-оболочек ( Mono или Flux ), но не кеширует фактический результат нашего метода.

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

1. Обзор

В этом руководстве мы рассмотрим несколько способов обработки исключений в Project Reactor . Операторы, представленные в примерах кода, определены как в классах Mono , так и в классах Flux . Однако мы сосредоточимся только на методах класса Flux .

2. Зависимости Maven

Начнем с добавления зависимости ядра Reactor :

<dependency>
<groupId>io.projectreactor</groupId>
<artifactId>reactor-core</artifactId
<version>3.4.9</version>
</dependency>

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

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

1. Введение

Ratpack — это фреймворк, созданный поверх движка Netty , который позволяет нам быстро создавать HTTP-приложения. Мы уже рассмотрели его основное использование в предыдущих статьях . На этот раз мы покажем, как использовать его потоковый API для реализации реактивных приложений .

2. Краткий обзор реактивных потоков

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

  • Отзывчивый
  • Устойчивый
  • Эластичный
  • Сообщение

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

1. Введение

В этом руководстве мы узнаем, как использовать функции реактивного доступа к данным Spring Data Cassandra.

В частности, это третья статья из серии статей Spring Data Cassandra. В этом мы предоставим базу данных Cassandra с помощью REST API.

Подробнее о Spring Data Cassandra мы можем прочитать в первой и второй статьях серии.

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

1. Обзор

В этом руководстве мы узнаем, как настраивать и реализовывать операции с базой данных реактивным способом на Couchbase с использованием репозиториев данных Spring.

Мы рассмотрим основные способы использования ReactiveCrudRepository и ReactiveSortingRepository . Кроме того, мы настроим наше тестовое приложение с помощью AbstractReactiveCouchbaseConfiguration .

2. Зависимости Maven

Во-первых, добавим необходимые зависимости: