GetConfig: sync.Once
S3-клиент создаётся дорого. Реализуйте GetConfig: инициализируйте конфиг через once.Do (внутри — initCalls.Add(1)).
Показать решение
GolangРешение
func GetConfig() *Config {
once.Do(func() {
cfg = &Config{Timeout: 5, Retries: 3}
initCalls.Add(1)
})
return cfg
}Записаться на разбор
10 000 ₽ · 60 минут · онлайн