Golang
Koodi ülevaade: vahemälu Go keeles mutexiga. Leidke probleemid ja pakkuda parendusi. Tingimus: lugemise/kirjutamise koormus 80/20.
Rääkige failisüsteemidest — kuidas toimub tee seadmest failini Linuxis
/* In the input, there is an array of numbers nums of length n. Each number in the array can be either unique or appear twice. The numbers are in the range [1, n]. You need to write a function that returns an array consisting only of numbers that appear twice. Examples: Input: nums = [4, 3, 2, 7, 8, 2, 3, 1] Output: [2, 3] Input: nums = [2, 2, 1] Output: [2] */
Praktiline ülesanne: rakenda funktsioon FastestSearcher, mis käivitab mitme otsingumootori testimise paralleelselt ja tagastab kiireima nime, vastamise aja ja vea (kui vähemalt üks tagastab vea).
/* Antud on tähemärkide jada. Leidke indeksipaaride i ja j arv (i <= j), mille vahel ei ole korduvaid tähemärke. Jada "aba" puhul on vastus 5: [0, 0] ("a") [0, 1] ("ab") [1, 1] ("b") [1, 2] ("ba") [2, 2] ("a") */
Kui te teete sünkrontse päringu andmebaasile või naaberteenusele ja päring kestab 5 sekundit, mis juhtub operatsioonisüsteemi lõngaga, millel teenus töötab, kuni päring on lõpule viidud?
peamänd pakett func oneStep(yield func() bool) { yield() } func f() { üldü üks samm { trüki("f ") recover() } } func g() { üldü üks samm { trüki("g ") recover() } } func checkPanic(loop func(), c chan<- struct{}) { defer func() { println(recover() != nil) c <- struct{}{} }() defer loop() panic(123) } func main() { c := make(chan struct{}, 1) go checkPanic(f, c) <-c go checkPanic(g, c) <-c }
Miks te ei kasutanud Redis-i andmebaasi salvestamise asemel?
Millal kasutada mutexi või kanaleid?
Mida teate meist kui tootest?
Millega sa viimati tööl tegelesid?
Räägi select-ist Go-s.
Mis on protsess ja niit operatsioonisüsteemis (Linux)?
Räägi mulle Transactional Outbox mustrist — mis see on ja milleks seda kasutatakse?
Racontes ce que tu sais sur MVCC. Que se passe-t-il lors d'une mise à jour d'une ligne du point de vue de MVCC (création d'une nouvelle version de la ligne, que devient l'ancienne)? Quand VACUUM nettoie-t-il les anciennes versions des lignes?
Miks otsite uut tööd?
Millises tüübi teisendamise variandis on võimalik paanikat tekitada ja milline konstruktsioon võimaldab seda vältida?
Rääkige meile oma kogemustest jaotatud süsteemide arhitektuuris, andmebaasides, shardingus ja replikatsioonis. Kas osalesite arhitektuuri kavandamises või töötasite ainult valmis lahendustega?
Mis on indeksid andmebaasis, nende eelised ja puudused?
Millised teised indeksitüübid PostgreSQL-is olemas on?