Spring Boot: поддержка Spring Messaging RSocket
Spring Boot автоматически настроит инфраструктуру Spring Messaging для RSocket.
Это означает, что Spring Boot создаст bean-компонент RSocketMessageHandler, который будет обрабатывать запросы RSocket к вашему приложению.
Вызов сервисов RSocket с помощью RSocketRequester
Как только канал RSocket установлен между сервером и клиентом, любая сторона может отправлять или получать запросы другой стороне.
Как сервер, вы можете получить инъекцию экземпляра RSocketRequester в любой метод-обработчик RSocket @Controller. Как клиент, вы должны сначала настроить и установить соединение RSocket. Spring Boot автоматически настраивает RSocketRequester.Builder для таких случаев с ожидаемыми кодеками.
Экземпляр RSocketRequester.Builder является bean-прототипом, то есть каждая точка внедрения предоставит вам новый экземпляр. Это сделано специально, так как этот Builder с сохранением состояния и не следует создавать requesters с разными настройками, используя один и тот же экземпляр.
Следующий код показывает типичный пример:
@Service
public class MyService {
private final Mono<RSocketRequester> rsocketRequester;
public MyService(RSocketRequester.Builder rsocketRequesterBuilder) {
this.rsocketRequester = rsocketRequesterBuilder
.connectTcp("example.org", 9898).cache();
}
public Mono<User> someRSocketCall(String name) {
return this.rsocketRequester.flatMap(req ->
req.route("user").data(name).retrieveMono(User.class));
}
}
Читайте также:
- Spring Boot: веб-приложения с Spring WebFlux Framework
- Spring Boot: поддержка встроенного реактивного сервера
- Spring Boot: RSocket
Комментарии
Отправить комментарий