Hogyan van felépítve belülről (memóriában) a felület a Go-ban?
Golang
Hogyan garantálja az adatok konzisztenciáját — hogy az üzenet el lesz mentve az adatbázisba, és el lesz juttatva a címzettnek?
Vannak kérdéseid hozzánk?
Mi az a HTTP protokoll? Milyen részekből áll egy HTTP kérés? Mik azok a fejléc, cookie?
Volt-e fájdalom az egységes adatbázis szétválasztásával kapcsolatban?
Mi történik a hálózatban, amikor beírja a https://wildberries.ru címet a böngészőbe? Írja le a DNS feloldási folyamatot.
Mi a különbség a TCP és az UDP között? Miért használják a TCP-t a HTTPS-hez?
Mit kell tennünk, hogy láthasd a magas mérnöki kultúrát?
Mi az a GOMAXPROCS változó a Go-ban? Használhat-e egy program több szálat, mint amennyit a GOMAXPROCS megad?
Mesélj egy bevezetőt — mivel foglalkozol mostanában, mit csináltál érdekes vagy nem érdekes dolgokat?
Milyen szinkronizációs eszközök vannak a Go-ban a goroutine-okhoz? Javítsd ki a verseny példáját az atomic használatával
Feltétel Van egy adatbázisunk a felhasználók jelszavaival, a jelszavak hash-elve vannak (hashPassword függvény), és ismert az a karakterkészlet is, amelyeket a jelszavakban lehet használni (változó alphabet). Feladatunk implementálni a RecoverPassword függvényt, hogy az ismert hash alapján visszaállítsa a jelszót, és a TestRecoverPassword sikeresen lefusson. Alapvető követelmények: Bárhogy lehet package main import ( "crypto/md5" "fmt" ) var alphabet = []rune{'a', 'b', 'c', 'd', '1', '2', '3'} func RecoverPassword(h []byte) string { return "" } func hashPassword(in string) []byte { h := md5.Sum([]byte(in)) return h[:] } func main() { tests := []string{"a", "12", "abc333d"} ok := true for _, exp := range tests { h := hashPassword(exp) act := RecoverPassword(h) if act != exp { fmt.Printf("Hiba: elvart %q, kapott %q\n", exp, act) ok = false } } if ok { fmt.Println("Minden teszt sikeresen lefutott") } }
Javasolj optimális indexeket a hely és nem (gender) mezők szerinti szűréssel rendelkező lekérdezéshez a maximális teljesítmény érdekében
Könnyű: NEHÉZ Adott egy rendezett számokból álló tömb, amelyben vannak duplikátumok. El kell távolítani a duplikátumokat helyben (az eredeti tömbben), és vissza kell adni a kapott tömb méretét. Példa: Bemenet: nums = [0,0,1,1,1,2,2,3,3,4] Kimenet: 5, nums = [0,1,2,3,4,_,_,_,_,_] Magyarázat: Ebben a tömbben 5 egyedi elem van. Helyezze őket az első öt pozícióba, és adja vissza az 5 számot. A többi elem a tömbben tetszőleges lehet.
Milyen szinkronizációs primitívumokat ismersz az operációs rendszerekben?
Hogyan működik a kontextus öröklése Go-ban (context.WithValue, context.Background)?
Mire való a üzenetközvetítő (Kafka)? Hogyan illeszkedik az architektúrába?
Mi az adatbázis-replikáció és mire használják? Milyen problémák merülhetnek fel?
Hogyan garantálható az üzenetek sorrendje a chatben?
Hogyan működik egy hash-tábla? Mekkora az beszúrás és olvasás összetettsége? A Go-ban való megvalósítás jellemzői.