Azt hitted, hogy összetett index volt, de nem rendezi-e át az optimalizáló a oszlopokat a megfelelő sorrendbe?
Golang
Tudnál beszélni a Dockerrel való telepítésről — hogyan működött?
Miért nem vették igénybe a Testcontainers-t?
Az ön szolgáltatás egy API volt, amit más szolgáltatások használtak. Redisben tároltad az adatok gazdagításhoz — miért nem kérdezted meg minden kérésnél a katalógus szolgáltatást (a raktárakról stb.)?
Hol tárolták a metrikákat? Nem használták a VictoriaMetrics-t?
Említetted, hogy Redis-t használtál Kafka-val való munkához — el tudnád mondani, miért?
Említetted, hogy problémák voltak az indexekkel — tudnál konkrétan beszélni róla?
Rendben, akkor pontosan mi változott magában a kérésben?
Milyen rendezést használnak a megoldásban?
Az LRU alkalmazásszinten tárol adatokat — milyen értelemben válik kiszámíthatatlanná a cache viselkedése skálázáskor?
Átírták az indexet vagy a lekérdezést — pontosan mi változott a lekérdezésben?
Hogyan voltak beállítva a metrikák? A szolgáltatás küldte a metrikákat vagy gyűjtötte őket?
A tracing már megtörtént — pontosan mit csináltál?
Használta a Testify-t?
Mi az algoritmus összetettsége és hol van itt a fa?
Van egy Go-ban lévő könyvtár — LRU, oda át lehet adni Any-t és beállítani TTL-t. Miért a Redis lett választva, és nem az?
Említetted, hogy írtál teszteket — el tudnád mondani, hogy milyen tesztekről volt szó és mit használtál?
Mi történt, amikor visszavonták a indexet, újraírták a lekérdezést, majd újra alkalmazták ugyanazt az indexet?
Hogyan voltak beállítva a metrikák? Hol szoktál általában deploy-olni?
A szolgáltatás Kafka-ból olvasott adatokat, gazdagította azokat Redis adatokkal — és akkor mit tett?