javascript
java中spring的web支持nio,Spring WebClient NIO功能和问题域,与Spring Webflux一起使用
我正在使用最新版本的Spring - Spring 5 .
我正在開發http客戶端的WebService“聚合器”,有點像路由請求到外部WebServices,接收響應后接收響應,做一些數據操作并回復我的HTTP服務的客戶端 .
為了在我的應用程序中創建http客戶端,我基本上使用可用于構建Reactive App的新WebClient .
我的代碼圍繞以下樣式:
private WebClient client = WebClient
.builder()
.clientConnector(new ReactorClientHttpConnector())
.baseUrl("http://webservice")
.build();
// Later calling like:
client.method(HttpMethod.POST) // Or GET, whatever
.uri(builder -> builder
.path("search")
.build())
.headers(defaultHeaders())
.exchange()
.block()
稍后,我在我自己的HTTP API中公開了這個調用的結果,為簡單起見,我不會在這里發布 .
作為此APP的一部分,我使用Netty作為嵌入式HTTP層來為我的應用程序的客戶提供服務 . (當我選擇Spring Boot Starter中的 Spring Webflux 時,它也是默認的) .
我的用例不一定是Reactive Application,我不需要執行任何Streaming或back-pressure邏輯 .
但是,我的理解是使用Netty,我可以在非阻塞時尚中對外部HTTP服務做所有請求,這對我的用例很有用 .
Questions are:
1 . 關于NIO功能是否正確,我可能從中受益?
2 . 如果我正在使用Spring 5的這個WebClient接口,我會丟失一些東西,或者在我的用例中獲得一些東西,因為我沒有做反應性的東西?
3 . org.springframework.web.reactive.function.client.WebClient 應該滿足我的要求嗎?
4 . WebClient是構建功能管道的好選擇嗎?我問,因為我打算采取一個電話的結果,并進行后續調用,我打算使用 CompletableFutures ,我在WebClient API中看到了這個?
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的java中spring的web支持nio,Spring WebClient NIO功能和问题域,与Spring Webflux一起使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1主5从mysql数据库_MySQL主从
- 下一篇: android悬浮动态权限,Androi