Sobes.tech

Golang

Kako učiniti memoriju konstantnom (ukloniti zavisnost od broja jedinstvenih simbola)?

201

Kako će izgledati interakcija klijenta, mikroservisa za autorizaciju i mikroservisa prodavnice pri korišćenju JWT? I šta će se promeniti bez JWT, sa sesijama?

201

Ispričaj mi o svom radnom iskustvu i čime se baviš.

201

Ispričaj o projektu AeroHotels: završna arhitektura, kako si projektovao backend?

200

Šta je slojevita arhitektura i kako je organizovana u tvom projektu?

198

Koji je bio sastav tima? Da li je bio monofunkcionalan ili cross-funkcionalan?

198

Koju poziciju trenutno razmatraš za sebe, šta bi bilo interesantno?

197

Šta je grooming i kako se razlikuje od planiranja?

195

Zadatak: postoji servis sa ograničenjem od 5 paralelnih zahteva ka LLM. Kada dođe 6. zahtev, dobija se 429. Kako konceptualno rešiti ovaj problem?

193

/* Postoji aplikacija sa arhitekturom mikroservisa. Mikroservis se može apstrahovati pomoću interfejsa Backend. Za pristup jednoj instanci mikroservisa, može se koristiti tip BackendImpl, koji je već implementiran. Svaki mikroservis ima nekoliko desetina pokrenutih instanci, svaka dostupna putem svoje adrese addr. Međutim, pojedinačne instance mikroservisa nisu pouzdane: the mogu padati, biti nedostupne ili preopterećene. Zato vam je potrebna implementacija tipa Balancer, koji takođe implementira interfejs Backend i vrši balansiranje opterećenja između instanci mikroservisa, birajući svaki put **najmanje opterećenu** instancu. */ type Request interface{} type Response interface{} type Backend interface { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr sadrži ip:port konkretne instance func NewBackend(addr string) *BackendImpl type Balancer struct { //TODO } var _ Backend = &Balancer{} // addrs sadrže adrese svih balansiranih instanci func NewBalancer(addrs []string) *Balancer { //TODO }

192

Koja su tvoja finansijska očekivanja?

192

/* Дат је низ карактера. Пронађите број парова индекса i и j (i <= j), између којих нема понављајућих карактера. За низ "aba" одговор је 5: [0, 0] ("a") [0, 1] ("ab") [1, 1] ("b") [1, 2] ("ba") [2, 2] ("a") */

189

Šta znate o Yandex-ovom programu multitrek?

187

Kako se funkcija pojavljuje i stiže do prodaje: planiranje, razvoj, testovi, pregled koda, implementacija, rollback?

187

Kako ste integrisali LLM u projekat sa potraživanjima? Pričajte uopšteno.

187

Kako ste radili sa ličnim podacima pre slanja u spoljni LLM?

186

/* Dat je niz znakova. Pronađite broj parova indeksa i i j (i <= j), između kojih nema ponovljenih znakova. Za niz "aba" odgovor je 5: mogu biti ASCII [0, 0] ("a") [0, 1] ("ab") [1, 1] ("b") [1, 2] ("ba") [2, 2] ("a") */

185

тип Response интерфейс {} tип Backend интерфейс { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr садржи ip:port конкретног примера func NewBackend(addr string) *BackendImpl tип Balancer структура { // TODO backends []*BackendImpl index int mu sync.Mutex } var _ Backend = &Balancer{} func (b *Balancer) Invoke(ctx context.Context, req Request) (Response, error) { ако len(b.backends) == 0 { return nil, fmt.Errorf("Број на бекендови во слајсот е 0") } b.mu.Lock() index := b.index ако b.index + 1 == len(b.backends) { b.index = 0 index = 0 } b.mu.Unlock() resp, err := b.backends[index].Invoke(ctx, req) return resp, err } // addrs содржи адреси на сите балансирани примероци func NewBalancer(addrs []string) *Balancer { // TODO backends := make([]*BackendImpl, len(addrs))

185
/11