gRPC-де белгілі бір өріс клиент қолдануы үшін арналмағанын қалай көрсетуге болады?
Golang
Бағдарламалау тілінде слайсты функцияға қалай өткізуге болады?
func fn() { str := "" for i := 0; i < 100000; i++ { str += fmt.Sprintf("%d", i) } fmt.Println(str) }
Жобалау үлгілері туралы айтыңыз. Double-checked locking деген не және ол не үшін пайдаланылады?
Неліктен және қайсы (кодтың шығуы туралы)
Read Committed деңгейін пайдалану кезінде қайталанбаған оқуды (Non-Repeatable Read) жағдайы мүмкін бе?
Redis қалай жұмыс істейтіні, ол не екенін айтып беріңіз?
// Әрбір принтте не шығарылады? func fn(a []int) { a[2] = 5 a = append(a, 6) fmt.Println(a) // a = append(a, 7) a[0] = 5 fmt.Println(a) // } func main() { a := make([]int, 0, 5) for i := 0; i < 4; i++ { a = append(a, i) } fn(a[:3]) fmt.Println(a) // }
7-ші жолда ішкі массивтің толып, жаңа массивтің жасалатыны туралы қорытынды жасалған. Неге олай деп шештің?
Жұмыста сәтсіздіктер/қиындықтар болды ма?
Go тілінде map деген не және оны қалай түсінесіз?
Өз мысалыңызда оқиға-бағытталған тәсілді қалай қолданғаныңыз туралы айтыңыз.
Token Bucket жылдамдығын шектеуші не болады: бір сұрау секундтың басында, 99 соңында, содан кейін келесі секундта тағы 100?
// Бұл кодтың кемшілігі неде? Оны қалай жақсартуға болады? func fn() { str := "" for i := 0; i < 100000; i++ { str += fmt.Sprintf("%d", i) } fmt.Println(str) }
Қандай тапсырмаларды ұнатасың? Өз үшін не іздейсің?
Шығу API үшін 100 сұрау/секунды немесе минутына шектеуі бар rate limiter жобалаңыз
Бағдарламалық қамтамасыз ету әдістемелері туралы айтыңыз.
Жоба кім жобалаған — сіз функционал жетекшісі ретінде, командамен бірге ме, әлде команда жетекшісі ме?
Golang-ты қолданасың ба?
Олар қалай шешілді?