Sobes.tech
Middle+

Räägi mulle kõige keerulisemast tehnilisest ülesandest, millega sa projektis töötades kokku puutusid.

sobes.tech AI

Vastus AI-lt

Üks keerulisemaid ülesandeid oli optimeerida kõrge koormusega teenust, mis töötles sekundis miljoneid päringuid. Probleem seisnes selles, et sagedaste lukustuste ja ressursside konkurentsi tõttu tekkisid viivitused ning läbilaskevõime langes.

Lahendamiseks tuli:

  • Teha CPU ja mälu profiil pprof abil.
  • Tuvastada kitsaskohad sünkroniseerimises, asendada mutexid tõhusamate struktuuridega, näiteks atomiliste operatsioonidega.
  • Kirjutada kriitilised koodiosad ümber, minimeerida lukustusi.
  • Kasutada goroutine'i bassein, et kontrollida samaaegselt töötavate ülesannete arvu.

Lõpuks õnnestus oluliselt vähendada viivitusi ja parandada teenuse stabiilsust, mis avaldas positiivset mõju kasutajakogemusele.