Middle+
Mesélj a legnehezebb technikai feladatról, amivel a projekt során szembesültél.
sobes.tech MI
Válasz az MI-től
Az egyik legnehezebb feladat a nagy terhelésű szolgáltatás optimalizálása volt, amely másodpercenként millió kérés feldolgozására volt képes. A probléma az volt, hogy gyakori zárolások és erőforrásokért folytatott versengés miatt késések keletkeztek, és a kapacitás csökkent.
A megoldáshoz:
- CPU és memória profilozás pprof segítségével.
- A szinkronizációs szűk keresztmetszetek azonosítása, mutexek hatékonyabb struktúrákra, például atomikus műveletekre cserélése.
- Kritikus kódrészek újraírása, zárolások minimalizálása.
- Goroutine pool használata a párhuzamos feladatok számának ellenőrzésére.
Végül sikerült jelentősen csökkenteni a késéseket és növelni a szolgáltatás stabilitását, ami pozitívan hatott a felhasználói élményre.