Sobes.tech

Golang

Ma'lumotlarning barqarorligini qanday ta'minlash mumkin — xabar bazaga saqlanadi va oluvchiga yetkaziladi?

283

HTTP protokoli nima? HTTP so'rovi qaysi qismlardan iborat? Sarlavhalar, cookie nima?

271

Birlashtirilgan ma'lumotlar bazasining ajralishi bilan og'riqlar bo'ldimi?

264

TCP va UDP o'rtasida nima farq bor? Nima uchun HTTPS uchun TCP ishlatiladi?

263

Brauzerga https://wildberries.ru ni kirganda tarmoqda nima bo'ladi? DNS-yechish jarayonini tavsiflang.

254

Siz yuqori muhandislik madaniyatini ko'rishingiz uchun nima qilishimiz kerak?

248

Kirish bilan tanishtiring — so'nggi paytlarda nima bilan shug'ullanyapsiz, qiziqarli yoki qiziqmas ishlar qilganmisiz?

242

Go'da GOMAXPROCS o'zgaruvchisi nima? Dastur GOMAXPROCS da ko'rsatilganidan ko'proq oqimlardan foydalanishi mumkinmi?

242

Shart Bizda foydalanuvchilarning parollari bilan ma'lumotlar bazasi bor, parollar hashlangan (hashPassword funktsiyasi), va shuningdek, parollarda ishlatilishi mumkin bo'lgan belgilarning to'plami ma'lum (o'zgaruvchi alphabet). Bizning vazifamiz, ma'lum hash asosida parolni tikadigan RecoverPassword funktsiyasini amalga oshirish va TestRecoverPassword muvaffaqiyatli yakunlanishini ta'minlash. Asosiy talablar: Har qanday usul mumkin 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("Xato: kutilyapti %q, olinmoqda %q\n", exp, act) ok = false } } if ok { fmt.Println("Barcha testlar muvaffaqiyatli o'tdi") } }

237

Joylashtiring joylashuv va jins (jins) maydonlari bo'yicha filtrlangan so'rov uchun maksimal ishlash uchun optimal indekslar

228

Qiyinchilik: Oson Tartiblangan raqamlar massiv berilgan, unda takroriy elementlar mavjud. Ularni joyida (asl massivda) olib tashlash va hosil bo'lgan massivning o'lchamini qaytarish kerak. Misol: Kiritish: nums = [0,0,1,1,1,2,2,3,3,4] Chiqish: 5, nums = [0,1,2,3,4,_,_,_,_,_] Tushuntirish: Bu massivda 5 ta noyob element mavjud. Ularni massivning birinchi besh pozitsiyasiga joylashtiring va 5 raqamini qaytaring. Keyingi elementlar istalgan bo'lishi mumkin.

224

Xabar brokeri (Kafka) nima uchun kerak? U qanday arxitekturaga mos keladi?

222

Go'da kontekstlarning merosxo'rligi qanday ishlaydi (context.WithValue, context.Background)?

220

JWT token nima? Uning tuzilishi va oddiy tokenlarga nisbatan afzalliklari qanday?

215

Brokerlar sifatida Kafka va RabbitMQ ni qanday ishlatdingiz? Nega ikkita?

210

Go'da goroutinlarni sinxronlashtirish uchun qanday vositalar mavjud? Atomic yordamida poyga misolini tuzatish

210

Operatsion tizimlarda qanday sinxronizatsiya primitiplarini bilasiz?

209
/4