Sobes.tech

Golang

Kokiose bibliotekose rašomi metrikos Go?

216

Kokia šio kodo paskirtis? Kokį verslo-techninį problemą jis sprendžia?

209

Kokios metrikos? Su kokiais įrankiais rašysime šias metrikas?

190

// Užduotis 4 // Tipiniame CRUD serveryje - tam tikru momentu kai kurios metodai pradėjo veikti lėtai ir paslauga pradėjo laukti. // Paslauga susideda iš: // * Application Load Balancer (L7) - priima įeinančius užklausas ir užbaigia tls // * Backend (rest, java/kotlin arba golang) - apdoroja įeinančias užklausas ir verslo logiką // * Database (postgres) - saugo ir apdoroja SQL užklausas // Kaip teisingai elgtis, kad suprastumėte problemų priežastį ir sukurtumėte sprendimus situacijai pagerinti?

178

// Užduotis 3 // Aprašykite, kokią užduotį šis kodas sprendžia // Kokios problemos yra šiame sprendime? // Kaip perrašytumėte šį kodą?

167

Ką daryti su duomenų baze ir apkrovos balansavimo priemone, jei kyla našumo problemų?

159

Kaip prisijungti prie pprof profiliavimo serveryje?

155

// Užduotis 3 // Aprašykite, kokią užduotį sprendžia šis kodas // Kokios problemos yra šiame sprendime? // Kaip perrašytumėte šį kodą? var c int type Trace struct { // Kai kurie laukai čia } type Sender interface { Send(Trace) } func Do(sender Sender, tr Trace) { c++ if c == 100 { sender.Send(tr) c = 0 } }

145

Kokius indeksus naudojote darbe? Ką taikėte praktikoje? Wildberries?

140

Ką darysite, kai jūsų komandoje kasdien keičiasi prioritetai ir atsiranda naujų skubių užduočių?

136

Kaip veikia skirstymas PostgreSQL po gaubtu?

136

Kokios problemos yra su globaliu skaitikliu kode? Kaip tai ištaisyti?

130

Kaip padaryti Increaser universalų — nesusijusį su skaičiumi 100?

128

Kuriame grafike pprof naudojimo metu pamatėte problemą?

128

// Klausimas 3 // Aprašykite, kokį uždavinį sprendžia šis kodas // Kokios problemos yra šiame sprendime? // Kaip perrašytumėte šį kodą? var c int var mu sync.RWMutex type Trace struct { // Kai kurie laukai čia } type Sender interface { Send(Trace) } func Do(sender Sender, tr Trace) { mu.Lock() defer mu.Unlock() c++ if c == 100 { go func() { sender.Send(tr) }() c = 0 } }

120

func normalize2(str []rune) []rune { result := str[:0] for val := range str { if val != ' ' { result = append(re) } } l, r := 0, 0 isSpace := false for i := 0, i < len(str); i++ { val := string(str[i]) if val == " " { if isSpace { continue } else { str[r] = val r++ isSpace = true } } else { str[r] = val r++ isSpace = false } } return str[:r] }

116

Ar Increaser gali tapti Sender įgyvendinimu? Kuo Increaser logiškai skiriasi nuo Sender?

111

Ar galite papasakoti, kaip sukūrėte ir įgyvendinote REST ir gRPC API platformos vidiniams ir išoriniams servisams?

110
/2