Sobes.tech

Golang

Cum ai obține, cu o singură interogare, lista vânzătorilor neblocați, având o tabelă cu toți vânzătorii și alta doar cu vânzători blocați?

173

Fațada accesează 10 servicii interne (fiecare de 100-300 ms) plus un serviciu global în China (500 ms), timpul total de răspuns fiind de aproximativ 3,5 secunde. Cum ai rezolva această problemă pentru a accelera procesarea?

172

Cum a fost organizată reținerea soft hold a soldurilor cu verificarea finală la confirmarea rezervării?

172

Aveai un singur gateway de serviciu la intrare, cu care comunicau toți partenerii (B2B)? În câte instanțe rula?

171

Ai întrebări pentru colegul tău?

168

Cum să nu mergi deloc la serviciul care va cădea sigur sau va fi inaccesibil?

166

Ești speriat de urmăritorul de timp? De ce?

164

Redis păstra datele doar în memorie sau avea fallback pe disc? Ce se întâmplă dacă Redis cade?

164

Dacă ai o sarcină mare, de exemplu un fișier de 10 GB cu setări pe linie, și trebuie să procesezi fiecare linie (de exemplu, să pui un punct la sfârșit), ar ajuta goroutines să accelereze această muncă?

163

Dacă folosiți canale pentru a colecta rezultatele de la servicii, câte canale ar fi necesare pentru a organiza acest mecanism?

163

Câte centre de date ați avut: unul sau mai multe?

163

Cum se calcula RPS-ul — pur și simplu adăugați sarcina de pe toate mânerele, sau cum?

161

În limbajul Go, există goroutines — fire ușoare. Poți explica cum înțelegi când trebuie să folosești o goroutine și când nu?

160

Cum ați implementat atomicitatea scrierii în Redis? Ce algoritm ați folosit (script Lua)?

159

Dacă faci o solicitare sincronă către baza de date sau un serviciu vecin, și solicitarea durează 5 secunde, ce se va întâmpla cu firul de sistem de operare pe care rulează serviciul în timp ce solicitarea este în curs?

158

Cum să înțelegi unde este punctul de blocaj în procesarea fișierului — dacă procesarea linie cu linie pare lentă, iar goroutine-urile procesează în buclă?

156

Serviciul distribuia pur și simplu date din cache sau realiza și altă logică?

152

Ce ai transmite în interiorul acestui canal (ce structură de date)?

152

Ai spus că ai un serviciu care ascultă Kafka și actualizează cache-ul în Redis, corect?

150

Poate ar trebui să începem să folosim goroutines pentru a crește viteza, de exemplu, de zece ori mai rapid folosind zece goroutines?

150
/3