Mälu profileerimise jälgimiseks CI/CD torujuhtmetes peaksite jälgima järgmisi põhimõõdikuid:
1. Prügikoristusvõimsus: see mõõdab prügikoristustoimingutele kulunud aega võrreldes kogu täitmise ajaga. Madalam väärtus näitab paremat mäluhaldust[1].
2. Keskmine prügikoristuspausi aeg: see mõõdab keskmist aega, mille jooksul rakendus prügikorjamise ajal peatab. Madalamad väärtused näitavad väiksemat mõju rakenduse jõudlusele[1].
3. Maksimaalne prügikoristuspausi aeg: see mõõdab maksimaalset aega, mille jooksul rakendus prügikorjamise ajal peatab. Madalamad väärtused näitavad väiksemat mõju rakenduse jõudlusele[1].
4. Objektide loomise kiirus: see mõõdab kiirust, millega rakendus objekte loob. Kõrgemad väärtused võivad viidata mälulekkele või ebaefektiivsele mälukasutusele[1].
5. Peak Heap Size: see mõõdab rakenduse poolt kasutatavat maksimaalset mälumahtu. Kõrgemad väärtused võivad viidata mälulekkele või ebaefektiivsele mälukasutusele[1].
6. Lõimede arv: mõõdab aktiivsete lõimede arvu rakenduses. Kõrgemad väärtused võivad viidata suurenenud mälukasutusele[1].
7. Lõime olekud: see mõõdab lõimede jaotust erinevates olekutes (nt töötab, magab, blokeeritud). See võib aidata tuvastada mäluga seotud probleeme[1].
8. Lõimerühmad: mõõdab lõimerühmade arvu rakenduses. Kõrgemad väärtused võivad viidata suurenenud mälukasutusele[1].
9. Raisatud mälu: mõõdab ebatõhusalt kasutatud mälumahtu. Kõrgemad väärtused võivad viidata mälulekkele või ebaefektiivsele mälukasutusele[1].
10. Objektide arv: mõõdab objektide koguarvu rakenduses. Kõrgemad väärtused võivad viidata mälulekkele või ebaefektiivsele mälukasutusele[1].
11. Klasside arv: see mõõdab klasside arvu rakenduses. Kõrgemad väärtused võivad viidata suurenenud mälukasutusele[1].
Neid mõõdikuid jälgides saate tuvastada mäluga seotud probleemid arenduse elutsükli alguses ja optimeerida mälukasutust, et tagada rakenduse tõhus jõudlus.
Tsitaadid:[1] https://blog.heaphero.io/2018/07/10/micrometrics-for-ci-cd-pipeline/
[2] https://www.linkedin.com/pulse/cicd-pipeline-metrics-palani-thiyagarajan
[3] https://thenewstack.io/using-dora-metrics-to-optimize-ci-pipelines/
[4] https://docs.gitlab.com/ee/user/analytics/ci_cd_analytics.html
[5] https://codilime.com/blog/continuous-monitoring-and-observability-in-devops/