Sobes.tech

Goда тармак менен иштөө үчүн кайсы пакеттерди билесиң?

Middle+
MAX LTD Group
78

Индекстин селективдүүлүгү эмнеде?

Senior
РамблерРамблер
78

Күтүүлөргө кандай карайсың? Мындай тажрыйбаң барбы?

Senior
ozon_tech
78

Эсептөө кайра кайталануучулугун кантип камсыз кылынды — бардык кызматкерлер тобуна бирдей шарттар колдонулуп жатканына кепилдик берүү үчүн?

Middle+
А7
78

Кайсы маалыматтар базаларында иштедиңиз жана кайсы SQL суроолорду жазууңуз керек?

Middle+
Лига Цифровой ЭкономикиЛига Цифровой Экономики
78

Контейнер кайра иштетилгенден кийин PostgreSQL маалыматтары жоголбошу үчүн эмне кылуу керек?

Middle
Сбертех
78

Kafkaнын өзгөчөлүктөрү жөнүндө айтып бер — ал кандай түзүлгөн?

Middle+
Napoleon IT
78

Кайда кечиктирилген функциялардын аргументтери эсептелет — аныктоо учурундабы же чакыру учурундабы?

Senior
КасперскийКасперский
78

Интерфейссиз код жазса болобу?

Middle+
Napoleon IT
78

Неге триггерлер негизинен Legacy системалар үчүн колдонулат?

Middle+
Озон банк
78

Окуучу каналды жабса жана жазуучу дагы жазып жатса, эмне болот? Паникадан кантип сактануу керек?

Middle+
Астрал-Софт
78

DNS эмне жана ал кандай иштейт?

Senior
YadroYadro
78

Goда жабык каналга жазуу мүмкүнбү?

Senior
purrweb
78

Таза каналдан окуу учурунда түбөлүк блоктонуудан кантип сакталуу керек? Select деген эмне жана анын үлгүлөрү кандай?

Senior
YadroYadro
78

Эмне үчүн рынокко көңүл бура баштадыңыз? Азыр өзүңүз үчүн эмне издөөдөсүз? Жаңы компанияны тандоодо эмнеге көңүл бурасыз?

Senior
Магнит Тех
78

Программалоодо кагылыштарды болтурбоого жардам берген механизмдер барбы?

Middle+
OZONOZON
78

Go-дөгү сап эмне?

Senior
Small
78

Түз эфир коддоо: семафор — кантип иштейт жана буферленген каналга негизделген ишке ашыруу.

Middle+
Веро Трейс
78

type Balancer struct { // TODO backends []*BackendImpl index int mu sync.Mutex N int K time.Duration } var _ Backend = &Balancer{} func (b *Balancer) Invoke(ctx context.Context, req Request) (Response, error) { if len(b.backends) == 0 { return nil, fmt.Errorf("Байланыштардын саны слайста 0") } b.mu.Lock() index := b.index for b.backends[index].banned { b.index = (b.index + 1) % len(b.backends) index = b.index } b.index = (b.index + 1) % len(b.backends) b.mu.Unlock() backend := b.backends[index] resp, err := backend.Backend.Invoke(ctx, req) if err != nil && backend.countErrors < b.N { backend.mu.Lock() backend.countErrors += 1 if backend.countErrors == b.N { backend.banned = true go func() { time.Sleep(b.K) backend.mu.Lock() defer backend.mu.Unlock() backend.banned = false backend.countErrors = 0 }() } backend.mu.Unlock() } return resp, err } // addrs бардык балансировкаланган мисалдардын даректери func NewBalancer(addrs []string) *Balancer { // TODO backends := make([]*BackendImplF, len(addrs)) for _, addr := range addrs { implF := BackendImplF{ Backend: NewBackend(addr), } backends = append(backends, &implF) } }

Middle
Яндекс
78

Бул тапшырмада бизге эмне үчүн WaitGroup керек?

Senior
Cloud.ru
78
/412