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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

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

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

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

1 回答

?
慕姐8265434

TA貢獻(xiàn)1813條經(jīng)驗(yàn) 獲得超2個(gè)贊

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

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

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

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

因?yàn)槟阌幸粋€(gè)返回整個(gè)列表的阻塞調(diào)用,List<T>如果你把它放在 a 中,Mono訂閱者將在一個(gè)大的發(fā)射中獲得整個(gè)列表。如果它是一個(gè)非常大的列表,它可能會(huì)給 帶來壓力,subscriber因?yàn)榘l(fā)布者可能會(huì)在一大塊中發(fā)布一個(gè)巨大的列表,比如 1 000 000 個(gè)項(xiàng)目。

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

所以我個(gè)人建議將列表放在Flux.

但是這些都不會(huì)顯著提高您的應(yīng)用程序的性能。subscribers它更多的是調(diào)用可以獲得的功能。

為防止您的應(yīng)用程序出現(xiàn)嚴(yán)重減速,重要的是您的阻塞調(diào)用是使用其自己的線程進(jìn)行的。Schedulers.elastic()這可以通過使用為長(zhǎng)期任務(wù)生成新線程來實(shí)現(xiàn)。然后在默認(rèn) 60 秒后終止該線程。


查看完整回答
反對(duì) 回復(fù) 2023-06-04
  • 1 回答
  • 0 關(guān)注
  • 146 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)