Классический паттерн — запустить по горутине на каждый входной канал, все пишут в один выходной. Используешь sync.WaitGroup чтобы закрыть выходной канал когда все входные закрылись. Альтернатива — reflect.Select для одной горутины без создания N горутин. Для двух каналов обычный select проще. Merge полезен в fan-in паттерне, когда несколько producer'ов и один consumer.
Как реализовать merge channels?
Middle
168 просмотровAFK Offer AI
Как масштабировать websocket?