go并發(fā)-管道(pipeline)模式和扇出扇入(fan-in/fan-out)


扇入扇出模式(Fan-in, fan-out pattern)
扇入和扇出模式在并發(fā)場景中能得到較大的好處。這里將對它們逐個做專門的介紹(review):
扇出,在 GO 博客中這樣定義:
多個函數(shù)能夠同時從相同的 channel 中讀數(shù)據(jù),直到 channel 關(guān)閉。
這種模式在快速輸入流到分布式數(shù)據(jù)處理中,有一定的優(yōu)勢:

扇入,在 Google 這樣定義:
一個函數(shù)可以從多個輸入中讀取,并繼續(xù)操作,直到所有 channel 所關(guān)聯(lián)的輸入端,都已經(jīng)關(guān)閉。
這種模式,在有多個輸入源,且需要快速地數(shù)據(jù)處理中,有一定的優(yōu)勢:

標(biāo)簽: