Memorija: koliko dodeliti i zašto ne sve
Kako čitati grafik memorije u panelu, zašto iskorišćena memorija ne znači manjak i kada je vreme za jači paket.
Ažurirano 13. avgust 2026.
Grafikon memorije u panelu plaši nove igrače: skoro uvek je visok. To je normalno ponašanje Jave.
Kako ga čitati
Java unapred dodeljuje memoriju i oslobađa je samo tokom sakupljanja smeća. Testerasti oblik na grafikonu — rast potrošnje i oštar pad posle sakupljanja — znak je zdravog servera.
Problem izgleda drugačije: linija je zalepljena za plafon i ne spušta se posle padova. To znači da se smeće ne oslobađa — ili je memorija stvarno premala, ili postoji curenje.
Znaci nedostatka
OutOfMemoryErroru logu — analiza.- Zamrzavanja od po nekoliko sekundi koja rastu sa vremenom rada.
- Server radi dobro posle restarta, a do večeri se pogorša.
Curenje
Ako potrošnja raste linearno i ne pada, potraži krivca:
spark heapsummary
Obično je to plugin koji gomila podatke ili mod sa čitačima čankova — Spark.
Privremena mera je automatski restart jednom dnevno. Trajno rešenje je da nađeš krivca i ažuriraš ga.
Ne dodeljuj sve
Osim heap-a, procesu treba memorija za metapodatke, niti i bafere, a kontejneru treba memorija za sistem. Millida panel to sam uzima u obzir tako što postavlja ograničenja heap-a prema paketu — ne moraš to ručno da diraš.
Kada da promeniš paket
Kada vršna potrošnja stalno udara u ograničenje tokom normalnog rada, a profil ne pokazuje curenje — Promena paketa.
