Subject: [JavaTech] Shared memory in Web tier

From: anemeth <[email-masked]>
Date: Thu, 04 Oct 2001 09:13:29 +0300

Sziasztok!

Van-e arra lehetoseg, hogy a web tierben (web container) kozos memoriat 
hasznaljanak servletek
vagy jsp-k, es ezt a kozos memoriat vmi (ez is egy nagy kerdes, hogy mi a 
fene) automatikusan
frissitene, amikor socket kapcsolaton keresztul uzenetet kap.
Az otlet nem az enyem, hanem a kliense, aki meg van gyozodve rola, hogy ez 
lehetseges... De
az is lehet, hogy csak en nem latom a fatol az erdot. :)
Valamilyen otlet ennek a megvalositasara?

Udv,
   Ban

_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com

---

From: Szitas Krisztian <[email-masked]>
Date: Thu, 4 Oct 2001 16:34:41 +0200

>Szerintem erre gondolt! ;) En csak azon morfondirozom (mar megint tul
sokat),
>hogy mennyit nyom a teljesitmenyben, ha megterhelem a ServletContextet
>vagy 200K-nyi gyakran valtozo adattal.

A morfondirozas nem art, esetleg ha Sigmund Freud gondolatain morfondirozol,

az esetleg...

EN is morfondirozok egy pottyet:

Az a kerdes megint, mi az a 200k-nyi adat, es holnap nem-e lesz belole 2
meganyi?
Az adat valtozasrol kell-e vajon a masoknak figyelmeztetest kapniuk, stb.
Gondold meg az
attributeAdded(ServletContextAttributeEvent e)
void attributeRemoved(ServletContextAttributeEvent e)
void attributeReplaced(ServletContextAttributeEvent e)
eventek szetkuldozgeteset a sok feliratkozottnak elterthat egy ideig, es
lehet hogy 
folosleges, arra gondolok, hogy
ha egy osszefogo-objektbe be birod rakni az osszes adatod, akkor ez ugye 1
attributum,
nem nagyon lesz kuldozgetes, valtozasokrol nem kapsz ertesiteseket.
Ha 200 db 1k-s attributumra felosztod, akkor ropkodnek majd esetleg az
eventek,
de mindenki tudja majd mi tortenik.
Azt viszont neked kell tudnod mire van szukseged.

Mas szemszogbol,
Ha a webcontainer tobb jvm-t indit (barmilyen okbol kifolyolag), akkor meg o
sajat maga 
esetleg szinkronizalja a Contextek tartalmat, es ha tizedmasodpercenkent
200k-t
kuldozget ide-oda, akkor az megint kihatassal van a performancera.

---

From: anemeth <[email-masked]>
Date: Thu, 04 Oct 2001 21:08:45 +0300

Koszi a valaszt!

>Az a kerdes megint, mi az a 200k-nyi adat, es holnap nem-e lesz belole 2

A mostani requirementet figyelembe veve ez az adat maximalhato es a 200K mar
egy maximalis adatbecsles eredmenye. :)

>nem nagyon lesz kuldozgetes, valtozasokrol nem kapsz ertesiteseket.

Nem kell a ServletContextAttributeListener-t megvalositani, mivel ezekrol 
az adatokrol
csak akkor kell ertesitest nyernie a felhasznalonak, ha o kivanja megnezni 
oket...
Most legalabb is ez a hozzaallas. :))

>Ha 200 db 1k-s attributumra felosztod, akkor ropkodnek majd esetleg az

Igazad van! Nem irtam, hogy kb 100-200 byteos attributomokbol all (de abbol 
lehet rengeteg).

>kuldozget ide-oda, akkor az megint kihatassal van a performancera.

Mi a helyzet tobb web server eseten? Load balacing miatt biztos, hogy nem egy
szerveren fut majd...

>_______________________________________________
>JavaTech mailing list
>[email-masked]
>http://ebizlab.hit.bme.hu/mailman/listinfo/javatech

---

From: Szitas Krisztian <[email-masked]>
Date: Fri, 5 Oct 2001 10:21:36 +0200

>Mi a helyzet tobb web server eseten? Load balacing miatt biztos, hogy nem
egy

Hat akkor bizony a tobb servernek szinkronizalnia kell a contexteket
egymassal,
azaz fogja egymasnak kuldozgetni minden egyes valtozasnal az objektumokat 
egymasnak a balancer, jo kis forgalmat generalva.
Ha elmeseled mik ezek az adatok, lehet hogy kiderulne mi a jo megoldas, ha
van ilyen
egyaltalan ;-)