Sobes.tech

Golang

Kaip padaryti atmintį pastovią (pašalinti priklausomybę nuo unikalių simbolių skaičiaus)?

201

Papaskink apie savo darbo patirtį ir ką darote.

201

Kaip veiks klientas, autorizacijos mikroservisas ir parduotuvės mikroservisas naudojant JWT? Ir kas pasikeis be JWT, su sesijomis?

201

Papaskink apie AeroHotels projektą: galutinė architektūra, kaip projektavai backend'ą?

200

Kas yra sluoksninė architektūra ir kaip ji buvo organizuota tavo projekte?

198

Kokia buvo komandos sudėtis? Ar tai buvo monofunkcinė ar kryžminė funkcija?

198

Koki poziciją dabar svarstote sau, kas būtų įdomu?

195

Kas yra grooming ir kuo jis skiriasi nuo planavimo?

195

Užduotis: yra paslauga su 5 paraleliais užklausų apribojimu LLM. Kai pateikiama 6-a užklausa, gaunamas 429. Kaip šią problemą konceptualiai išspręsti?

193

/* Yra programa su mikroservisų architektūra. Mikroservisas gali būti abstrakčiai apibrėžtas naudojant `Backend` sąsają. Norint pasiekti vieną mikroserviso egzempliorių, galima naudoti `BackendImpl` tipą, kuris jau yra įgyvendintas. Kiekvienas mikroservisas turi kelias dešimtis veikiančių egzempliorių, kiekvienas prieinamas per savo adresą `addr`. Tačiau atskiros mikroserviso egzemplioriai nėra patikimi: jie gali kristi, būti neprieinami arba perkrauti. Todėl jums reikia įgyvendinti `Balancer` tipą, kuri taip pat įgyvendina `Backend` sąsają ir atlieka apkrovos balansavimą tarp mikroserviso egzempliorių, kiekvieną kartą pasirenkant **mažiausiai apkrautą** egzempliorių. */ type Request interface{} type Response interface{} type Backend interface { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr turi konkretaus egzemplioriaus ip:port func NewBackend(addr string) *BackendImpl type Balancer struct { //TODO } var _ Backend = &Balancer{} // addrs turi visų balansuojamų egzempliorių adresus func NewBalancer(addrs []string) *Balancer { //TODO }

192

Kokios yra jūsų finansinės lūkesčiai?

192

/* Duota simbolių eilutė. Raskite porų indeksų i ir j (i <= j) skaičių, tarp kurių nėra pasikartojančių simbolių. Eilutės "aba" atveju atsakymas yra 5: [0, 0] ("a") [0, 1] ("ab") [1, 1] ("b") [1, 2] ("ba") [2, 2] ("a") */

189

Ką žinote apie Yandex multitrack programą?

187

Kaip funkcija atsiranda ir pasiekia pardavimą: planavimas, kūrimas, testai, kodo peržiūra, diegimas, atšaukimas?

187

Kaip integravote LLM į skolų projektą? Papasakokite apskritai.

187

/* Duotas simbolių eilutė. Raskite indeksų i ir j porų skaičių (i <= j), tarp kurių nėra pasikartojančių simbolių. Eilutės "aba" atveju atsakymas yra 5: gali būti ASCII [0, 0] ("a") [0, 1] ("ab") [1, 1] ("b") [1, 2] ("ba") [2, 2] ("a") */

185

tipas Response sąsaja {} tipas Backend sąsaja { Invoke(ctx: kontekstas, req: Request): Response, error } var _ Backend = &BackendImpl{} // addr nurodo konkretaus pavyzdžio ip:port adresą func NewBackend(addr: string) *BackendImpl tipas Balancer struktūra { // TODO backends []*BackendImpl index int mu sync.Mutex } var _ Backend = &Balancer{} func (b *Balancer) Invoke(ctx: kontekstas, req: Request) (Response, error) { jei len(b.backends) == 0 { grąžinti nil, fmt.Errorf("Backends skaičius masyve yra 0") } b.mu.Lock() index := b.index jei b.index + 1 == len(b.backends) { b.index = 0 index = 0 } b.mu.Unlock() resp, err := b.backends[index].Invoke(ctx, req) grąžinti resp, err } // addrs apima visų balansuotų pavyzdžių adresus func NewBalancer(addrs []string) *Balancer { // TODO backends := make([]*BackendImpl, len(addrs))

185

Kaip dirbote su asmeniniais duomenimis prieš juos siunčiant į išorinį LLM?

184
/11