Kuidas te otsustasite, et on aeg midagi muuta? Milliste mõõdikutega te seda teginite?
Golang
Räägi mulle PostgreSQL-põhisest mikroteenusest, mis salvestab meediafaile. Mis salvestati PostgreSQL-i ja mis S3-s?
Millist tüüpi vaheteenustevaheline koostöö toimus ühes viimastest projektidest?
Mis on kanal Go-s? Milleks kanalid kasutatakse?
Kuidas tagati Redis'i vahemälu järjepidevusust? Kuidas nad mõistsid, et vahemälu tuleb uuendada?
Mis juhtub, registreerudes suletud kanalile, lugedes suletud kanalilt, kirjutades/loetes nil kanalilt?
Kui teenus kasutab liiga palju mälu, millele profiileris tähelepanu pöörata? Kuidas vähendada eraldusi?
Rakenda Worker Pool logide töötlemiseks: loe logid kanalilt, tööta neid paralleelselt, loe iga teenuse logide arv kokku, tagasta map[serviceName]count.
Milleks kasutatakse konteksti? Kuidas seda praktikas kasutasite?
Mis juhtub outbox skeemaga, kui Kafka muutub kättesaamatuks? Kui suureks võib outbox järjekord kasvada?
Kas peaks kirjutama meetodid artiklite loomise, uuendamise ja kustutamise jaoks? Mida täpselt peab teie teenus tegema?
Rääkige mulle andmebaasi päringute optimeerimise ülesannetest, indeksite kirjutamisest, partitsioneerimisest.
func(d *Data)GetViews(võti int, chechDay time.Time) (int, int, err) { d.mu.Lock() defer d.mu.Unlock() infoStr, ok := d.st[võti] if !ok { return 0, fmt.Errorf("artikkel ei leidu") } return (infoStr.day, infoStr.count, nil) }
Miks sa lahkusid RocketDevist?
Raksturot datu bāzes vaicājumu optimizāciju: kā atradāt problēmjautājumus un ko darījāt?
Kas on võimalik kirjutada ühte kaarti korraga erinevatest gorutinidest? Mis juhtub?
Kuidas teenused omavahel suhtlesid?
Mis juhtub, kui rikastamise ajal üks teenustest on kättesaamatu (näiteks teenus, millel on täisnimi/kasutaja andmed)? Kas kogu Kafka peatub?
Kuidas ühendada profiler Go-s? Kuidas profiile võtta?
Rääkige meile gRPC-st: miks valida, eelised, piirangud