Broker: принимает сообщения, персистит на диск (append-only log как Kafka), раздаёт consumers. Producer → topic → partition → consumer group. Каждая partition — файл с offset. Consumer коммитит offset. Retention по времени/размеру. Go: горутина на partition, mmap для быстрого чтения, batching для throughput. Replication через Raft для durability.
Как спроектировать message queue на Go?
Senior
148 просмотровAFK Offer AI
Что выведет: m := map[string]int{"a":1}; for k, v := range m { fmt.Println(k, v); m["b"] = 2 }?