Чем отличается процесс от потока (в контексте операционной системы)?
Что кешировали? Справочники какие-то?
func collectRTT(ctx context.Context, urls []string) (map[string]time.Duration, error) { pingMap := make(map[string]time.Duration, len(urls)) var mu sync.Mutex var wg sync.WaitGroup errCh := make(chan error, 1) for _, url := range urls { wg.Add(1) go func(u string) { defer wg.Done() dur, err := rtt(ctx, u) if err != nil { select { case errCh <- fmt.Errorf("failed to rtt %s, %w", u, err): default: } return } mu.Lock() pingMap[u] = dur mu.Unlock() }(url) } wg.Wait() close(errCh) if err := <-errCh; err != nil { return nil, err } return pingMap, nil }
Как посмотреть какие порты заняты в Linux?
Как работают индексы в PostgreSQL? Когда индекс не работает?
Занимался ли лидерскими задачами за всё время работы?
Как вы взаимодействовали между собой — были общие встречи, планирование, дейлики?
В итоге выбирали из каких решений? ClickHouse, ELK и что ещё третье?
Что такое Materialized View в ClickHouse?
Самая интересная задача, которую решал за последнее время?
Что такое context в Go и как он используется?
Что произойдёт при создании индекса на большой горячей таблице обычным CREATE INDEX? Как правильно создавать индексы на проде?
Нужно ли обновлять или удалять данные в ClickHouse, или они просто лежат?
Что выведет код с горутинами и замыканием переменной city в цикле? Как исправить?
Чем отличается репликация от шардирования?
Чем отличается Mutex от RWMutex?
Чем интерфейс отличается от Any?
Была ли какая-то самая крупная или самая сложная задача, которую хотелось бы выделить из опыта?
Можем ли мы влиять на garbage collector в Go?
Как правильно хранить URL хоста внешнего сервиса?