Java memoriaigeny

Fórumok

Java memoriaigeny

Hozzászólások

Az 1.5-os Java (aka Tiger, Java5) tud olyat, hogy tobb JVM kozos memoriateruletet hasznal, ahol ennek van ertelme. Ami erdekesebb, az az hogy ez az alapertelmezett mukodes.

Az egy JVM-et nem tudom miert akarod annyira eroltetni, biztos megvan az oka, de technikailag mindegyiknek kell egy sajat classloader legalabb, hogy ne keveredjenek a kulonfele implementaciok, ha kulonbozoek (ha nincs nevutkozesed, akkor is minden proginak sajat classloadere lesz, a Tomcat ebben tovabb is megy, es minden webappnak lesz sajat classloadere, igy ket webapp sem utkozik (ez 1.4 es javaban kulon JVM is altalaban)).

[quote:3de2bdffe6="crown"]Van lehetoseg azt megoldani, hogy tobb Java Application egy memoriateruleten fusson, es ne definialjon mindegyik maganak kulon JVM memoria teruletet (jre) ?

Lehetoleg minel kevesebb erofeszitessel ezt megoldani.

A webstart ezt csinalna, ha jol tudom, de az olyan nem jo, hogy alig lattam meg jo programot, amit implementaltak volna webstarthoz.

Jo lenne, hogyha pl. tomcat is egyutt futna mas programokkal. Pl. tomcat, eclipse, JAlbum egy memoriaban (JVM-ben) futna, az lenne a legjobb.

Lehetseges ez?

Elméletileg igen, gyakorlatilag nehezen.

Webstart nem ezt csinálja, az csak egy szabvány xml-alapján letölti, s elinditja a programokat, külön VM-ben.

Nézd meg a jdistro.com-ot, itt azzal (is) játszanak, hogy hogyan lehet egy VM-be minél több féle programot bezsúfolni. Amugy kicsit olyan kérés ez, mint, hogy futtassunk egy processzben apacheot,mysql-t és sshd-t :) Nem lehetetlen - vélem én naivan - viszont némi kódolással jár.

1.5-ös javaban van un Class Data Sharing, amivel lehet spórolni pár MB-ot http://java.sun.com/j2se/1.5.0/docs/guide/vm/class-data-sharing.html - némi korlátozással.

ui. természetesen 1.4-es javaban sem kellett külön JVM webappoknak

Úgy tudom, nem csak az Sun-os 1.5-ösben van ilyen fícsör, hanem a Bea-féle java sdkban is.

Van lehetoseg azt megoldani, hogy tobb Java Application egy memoriateruleten fusson, es ne definialjon mindegyik maganak kulon JVM memoria teruletet (jre) ?

Lehetoleg minel kevesebb erofeszitessel ezt megoldani.

A webstart ezt csinalna, ha jol tudom, de az olyan nem jo, hogy alig lattam meg jo programot, amit implementaltak volna webstarthoz.

Jo lenne, hogyha pl. tomcat is egyutt futna mas programokkal. Pl. tomcat, eclipse, JAlbum egy memoriaban (JVM-ben) futna, az lenne a legjobb.

Lehetseges ez?