Golang
Rääkige oma viimase projekti kohta: mis oli äriline eesmärk ja milleks see oli vajalik?
Kui palju partitsioone peaks Kafka teema omama?
Kas saab teha vigade töötlemise standardiseerimiseks?
/* Meil tuleb andmed edastada ühest allikast ühe tarbijani. Allikas tagastab andmeid väikestes osades (~kümme kirjet), samas kui tarbija töötab tõhusamalt suuremate osadega (~tuhat kirjet). Reaalne näide on andmete edastamine Kafka-tüüpi järjekordadest Clickhouse andmebaasi. Allikas: - Peaaegu lõpmatu. - Allikas ei tagasta kunagi rohkem kui MaxItems kirjet ühes Next-kutses. - Ühes "sessioonis" (ühe Pipe funktsiooni kutses) tagastab allikas iga Next-kutses uusi andmeid. - Kuid pärast taaskäivitust algab allikas eelmisest "kinnitust" saanud positsioonist, mis on määratud cookie-ga. Seetõttu, *iga* cookie väärtus, mille Next tagastab, pärast andmete salvestamist vastuvõtjasse, tuleb kinnitada Commit-kutsuga, samas järjekorras, nagu need on tagastatud Next poolt. Vastuvõtja: - Ei saa töödelda rohkem kui MaxItems korraga. Vajalik on implementeerida funktsioon func Pipe(p Producer, c Consumer) error, mis loeb andmeid allikast, rühmitab need mahuni, mis ei ületa MaxItems, ja salvestab vastuvõtjasse, pärast mida kinnitab edusamme allikas. */ const MaxItems = 9999 type Producer interface { // Next tagastab: // - partii elemente töötlemiseks // - cookie, mida tuleb kinnitada, kui töötlemine on lõppenud // - viga Next() (items []any, cookie int, err error) // Commit kasutatakse andmepartii märkimiseks töödelduks Commit(cookie int) error } type Consumer interface { Process(items []any) error } func Pipe(p Producer, c Consumer) error { // TODO }
Millised kohaletoimetamise garantiid pakub Kafka? Mida peab tootja tegema, et saavutada exactly-once?
Kas saab Docker konteinerit käivitada ilma pildita?
Kuidas sa argumenteerid oma seisukohta, kui kolleeg sinuga ei nõustu?
Kas võib Redisisse salvestada ainult order_id -> current_status ja kogu tellimuse kaardi lugeda replikast? Kuidas neid kahte lugemist eristada?
Pakun propose indeksit tabelile users koos väljadega gender ja age, kui vaja valida kasutajaid soo või vanuse järgi
Räägi juhtumist, kui sa midagi pakkusid ja pidid oma seisukohta tõestama.
Kui string on algoritmi järgi palindroom, kas see tagastab true või mitte?
Kuidas töötab konteineriseerimine, räägi mulle rohkem namespaces'ist?
Mida teha, kui endpoint aeglustub? Kirjeldage diagnostikast samme.
Mida teete pärast midagi parandada?
Milliseid nõudeid paneksite esikohale isikuandmeid töötleva süsteemi jaoks?
Milliseid ülesandeid oleks huvitav lahendada?
Ma eemaldasin suure faili, kuid kettaruum ei vabastatud. Miks? Kuidas seda leida ja parandada?
Mis on kontekst Go-s? Kuidas seda kasutatakse? Kuidas töötab tühistamine konteksti kaudu?
Mis on protobuf? Mis juhtub, kui lisada/eemaldada väli?
Kas aitab, kui lisada rohkem consumer'eid suure Kafka lag'i korral? Millistel juhtudel see aitab ja millistel mitte? Mis juhtub, kui on 16 partitsiooni ja 2 consumer'it?