Что такое singleflight?

Ответ

Пакет golang.org/x/sync/singleflight: группирует одновременные вызовы с одним ключом в один реальный вызов; все ждущие получают один результат. Устраняет "thundering herd" при кешировании: много запросов одного ключа - один запрос в бэкенд.

var g singleflight.Group
v, err, _ := g.Do("key", func() (interface{}, error) { return fetch(key) })
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.