第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從列表中創(chuàng)建通量是響應式編程的優(yōu)化解決方案嗎?

從列表中創(chuàng)建通量是響應式編程的優(yōu)化解決方案嗎?

浮云間 2023-06-04 10:28:42
我有一個阻塞數(shù)據(jù)存儲,它返回列表。為了反應,我應該將這個列表轉換為通量(或單聲道,取決于返回值)然后處理嗎?列表有另一個列表。我可以使用 Stream 處理臨時值或使用 Flux.fromIterable 將其轉換為 Flux 嗎?我試圖了解最佳實踐以及反應式編程在哪些方面會產生最佳性能。
查看完整描述

1 回答

?
慕姐8265434

TA貢獻1813條經驗 獲得超2個贊

Mono那么 a和 a有什么區(qū)別呢Flux

不同之處在于 aFlux是 a List<Mono>(為簡單起見)。什么是Mono?它是 T 類型的東西。那么這對你來說意味著什么。

好吧,如果你獲取 aList<T>你可以把它放在 a 中Mono<List<T>,或者你可以把它放在 a 中Flux<T>

如果您使用Flux#fromIterable列表中的每個項目放置此列表,那么列表中的每個項目都會變成一個Mono,并且Flux會在可用時發(fā)出該項目。

因為你有一個返回整個列表的阻塞調用,List<T>如果你把它放在 a 中,Mono訂閱者將在一個大的發(fā)射中獲得整個列表。如果它是一個非常大的列表,它可能會給 帶來壓力,subscriber因為發(fā)布者可能會在一大塊中發(fā)布一個巨大的列表,比如 1 000 000 個項目。

如果將大清單放入Flux罐頭subscriber限制中,并要求服務以更受控制的方式發(fā)出物品,例如分 10 批次,每批 100,000 件物品。

所以我個人建議將列表放在Flux.

但是這些都不會顯著提高您的應用程序的性能。subscribers它更多的是調用可以獲得的功能。

為防止您的應用程序出現(xiàn)嚴重減速,重要的是您的阻塞調用是使用其自己的線程進行的。Schedulers.elastic()這可以通過使用為長期任務生成新線程來實現(xiàn)。然后在默認 60 秒后終止該線程。


查看完整回答
反對 回復 2023-06-04
  • 1 回答
  • 0 關注
  • 134 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號