天天看點

在響應式程式設計中,會有一個資料釋出者Publisher和資料訂閱者Subscriber,Subscriber接收Publi

作者:軟體架構

在響應式程式設計中,會有一個資料釋出者 Publisher 和資料訂閱者 Subscriber,Subscriber 接收 Publisher 釋出的資料并進行消費,在 Subscriber 和 Publisher 之間還存在一個 Processor,類似于一個過濾器,可以對資料進行中間處理。

資料釋出者(Publisher)主動推送資料給訂閱者(Subscriber),觸發 onNext 方法。異常和完成時分别觸發 onError 和onComplete 方法。

如果 Publisher 釋出消息太快了,超過了 Subscriber 的處理速度,那怎麼辦?這就是 Backpressure (背壓)的由來。

上遊生産資料,生産完成後通過管道将資料傳到下遊,下遊消費資料。當下遊消費速度小于上遊資料生産速度時,資料在管道中積壓會對上遊形成一個壓力,這就是 Backpressure。

Reactive Programming 架構需要提供機制,使得 Subscriber 能夠控制消費消息的速度。

在響應式程式設計中,會有一個資料釋出者Publisher和資料訂閱者Subscriber,Subscriber接收Publi
在響應式程式設計中,會有一個資料釋出者Publisher和資料訂閱者Subscriber,Subscriber接收Publi
在響應式程式設計中,會有一個資料釋出者Publisher和資料訂閱者Subscriber,Subscriber接收Publi

繼續閱讀