Сіздің жалақыдан күтулеріңіз қандай?
Golang
60-жолда buf = buf[:0] — мұнда не болып жатыр?
Сіз қандай да бір бұлттық қызметтерді қолдандыңыз ба? Яндекс, Google, AWS немесе басқа бұлттық қызметтер?
/* Микросервистік архитектурасы бар қосымша бар. Микросервис Backend интерфейсін пайдаланып абстракциялауға болады. Бір микросервистің бір ғана мысалына қол жеткізу үшін, ол бұрыннан жүзеге асырылған BackendImpl түрін қолдануға болады. Әр микросервистің бірнеше ондаған мысалы бар, әрқайсысы өзінің адресі addr арқылы қол жетімді. Алайда, жеке микросервис мысалдары сенімсіз: олар құлап қалуы, қол жетімсіз болуы немесе жүктемелі болуы мүмкін. Сондықтан, сізге клиенттік жағы жүктемені теңестіруді жүзеге асыратын және әрбір уақытта **ең аз жүктемелі** мысалды таңдайтын Balancer типін жүзеге асыру керек. */
JWT серверде сессияларды сақтау арқылы қандай артықшылықтарымен ерекшеленеді?
Қандай негізгі бағдарламалау тілін қолданасыз? C++ немесе Python қолданасыз ба?
Бастапқыда буфер үшін қанша жад бөлінген?
func Pipe(p Producer, c Consumer) error { // TODO buf := make([]any, 0, MaxItems) cookies := make([]int, 0) flush := func() error { if len(buf) == 0 { return nil } if err := c.Process(buf); err != nil { return err } for _, cookie := range cookies { if err := p.Commit(cookie); err != nil { return err } } buf = buf[:0] cookies = cookies[:0] return nil } for { items, cookie, err := p.Next() if err != nil { flush() return err }
backend.Invoke шақыруы неге mutex-тің сыртында орналастырылды?
Егер Consumer.Process қате қайтарса, буфердегі деректер жоғалмай ма?
Go-дан басқа қандай бағдарламалау тілдерін өзіңіз немесе коммерциялық даму үшін қолданасыз?
Қазіргі кезде жоғары жүктеме кезінде бір секундта ең көп қанша сұраныс қабылдай аласыз?
Берілген S жолы, осы жолдағы барлық символдарды кемінде бір рет қамтитын ұсақ жолдардың санын есептеңіз. Мысалдар: "abca" -> 3 // abc, bca, abca "aa" -> 3 // aa, a, a, "ffg" -> 2 // ffg, fg
Қағаз жолы берілген. i және j индекстерінің саны табыңыз (i <= j), олардың арасында қайталанбайтын таңбалар бар, қоса алғанда. "aba" жолы үшін жауап 5: [0, 0] ("a") [0, 1] ("ab") [1, 1] ("b") [1, 2] ("ba") [2, 2] ("a") "acbb" жолы үшін жауап қандай?
// TODO backends []*BackendImpl index int mu sync.Mutex func (b *Balancer) Invoke(ctx context.Context, req Request) (Response, error) { b.mu.Lock() index := b.index if b.index + 1 == len(b.backends) { b.index = 0 index = 0 } b.mu.Unlock() resp, err := b.backends[index].Invoke(ctx, req) b.mu.Lock() defer b.mu.Unlock() b.index += 1 return resp, err } // addr содержит ip:port конкретного экземпляра func NewBackend(addr string) *BackendImpl // addrs содержат адреса всех балансируемых экземпляров func NewBalancer(addrs []string) *Balancer { // TODO backends := make([]*BackendImpl, len(addrs)) for _, addr := range addrs { backends = append(backends, NewBackend(addr)) } return &Balancer{ backends: backends, } }
Қайда тұрасың, қайдасың?
Жұмыс берушіні таңдау кезінде қандай критерийлерді қолданасыз? Сіз үшін ең маңыздысы не?
Микросервистік архитектура туралы сөйлесейік. Соңғы уақытта қолдау ма, әлде дамыту ма көп болды?
Қандай бағдарламалау тілін қолданасыз? Синтаксиспен қиындықтар қайдан пайда болды?
Қажет болса немесе жеке қалауыңыз бойынша басқа бағдарламалау тіліне өтуге дайынсыз ба?