Sobes.tech

Golang

Kirjutage SQL-päring, mis näitab autorid, kellel on rohkem kui 10 raamatut (tabelid: autorid, raamatud, paljus-ühes suhted)

187

Kuidas Linuxis protsessi tappa? Mida teha, kui kill pid ei aita?

185

Kuidas töötab Go-s sisemine slice? Kuidas töötab funktsioon append?

184

3 üksust: kasutaja, vestlus, sõnum • Kasutajal on nimi ja registreerimise kuupäev • Vestlusel on nimi ja loomise kuupäev • Sõnumil on tekst, autor ja loomise kuupäev • Kasutaja võib olla samaaegselt mitmes vestluses • Sõnum peab kuuluma vestlusele ja ei saa kuuluda rohkem kui ühele vestlusele korraga • Valdkonda tuleb kirjeldada tabelite kujul

183

Mis on EXPLAIN ja EXPLAIN ANALYZE PostgreSQLis, milles on erinevus?

182

Mis on võistluse tingimus (race condition) Go-s? Andke näide.

182

Rääkige huvitavast või keerulisest tehnilisest ülesandest, mille te lahendasite

179

Milliste andmebaasidega olete kõige tihedamalt töötanud?

175

Meil on kasutajate paroolide andmebaas, paroolid on hash'itud (hashPassword funktsiooniga), ning on teada ka tähemärkide kogum, mida saab paroolides kasutada (muutuja alphabet). Meie ülesandeks on rakendada RecoverPassword funktsioon nii, et see taastaks parooli teadaoleva hash'i põhjal ja TestRecoverPassword õnnestuks. Põhinõuded: Iga meetod on lubatud 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() {

173

peamine pakett import ( "crypto/md5" "fmt" ) var tähe = []rune{'a', 'b', 'c', 'd', '1', '2', '3'} func ParooliTaastamine(h []byte) string { return "" } func parooliHash(in string) []byte { h := md5.Sum([]byte(in)) return h[:] } func main() { tests := []string{"a", "12", "abc333d"} ok := true for _, exp := range tests { h := parooliHash(exp) act := ParooliTaastamine(h) if act != exp { fmt.Printf("Viga: oodatud %q, saadud %q\n", exp, act) ok = false } } if ok { fmt.Println("Kõik testid läbitud edukalt") } }

172

Millised HTTP meetodid on olemas? Millised neist on idempotentsed?

171

Koodi ülevaade: vahemälu Go keeles mutexiga. Leidke probleemid ja pakkuda parendusi. Tingimus: lugemise/kirjutamise koormus 80/20.

167

package main import ( "crypto/md5" "fmt" ) var alphabet = []rune{'a', 'b', 'c', 'd', '1', '2', '3'} func TaastaParool(h []byte) string { return "" } func hashParool(in string) []byte { h := md5.Sum([]byte(in)) return h[:] } func main() { tests := []string{"a", "12", "abc333d"} ok := true for _, exp := range tests { h := hashParool(exp) act := TaastaParool(h) if act != exp { fmt.Printf("Viga: oodatud %q, saadud %q\n", exp, act) ok = false } } if ok { fmt.Println("Kõik testid läbisid edukalt") } } Õige koodi käivitamiseks: sisendpunkt -- main funktsioon main paketis Ülesanne: Implementige funktsioon TaastaParool, mis taastab algse parooli MD5 hashist, mis koosneb antud tähestiku märkidest.

165

Kirjeldage HTTP-päringu ja vastuse struktuuri. Kuidas klassifitseeritakse vastuskoodid?

164

Kuidas rakendada sujuvat Go teenuse sulgemist Kubernetesis, kui uus versioon juurutatakse?

163

Miks kaalud uusi pakkumisi? Aktiivne või passiivne otsing?

161

Millised tabelid ja väljad on vajalikud selle sõnumivahetaja jaoks PostgreSQL andmebaasis?

160

Mida sa tahad praegu — millised on sinu ootused uue töö suhtes?

159

Mida ei tohiks meeskonnas või tööl olla? Millised on punased lipud?

157

Mis oli kõige raskem ja kõige huvitavam üleminekul monoliidilt mikroteenustele?

156
/4