Hirdetés
- Xiaomi 14T - nem baj, hogy nem Pro
- MWC 2026: Kezünkben a minden tekintetben európai okostelefon
- iPhone topik
- Fotókon a Samsung Galaxy A57
- Samsung Galaxy Watch8 és Watch8 Classic – lelkes hiperaktivitás
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Google Pixel topik
- Mobil flották
- Honor Magic6 Pro - kör közepén számok
- MWC 2026: csápolt a robot, majd dobott egy hátraszaltót
Új hozzászólás Aktív témák
-
modder
aktív tag
-
modder
aktív tag
Most az jutott a tudomásomra, hogy minden egyes lekérésnél elindítódik külön-külön a JVM (ami egymagában 30-40 mega), ezen picit meglepődtem.
Ezt hol olvastad meglepődnék ha így lenne. Totál elveszítené a webszerver az értelmét, és gyakorlatilag CGI-ként futtatnád így az alkalmazásodat.Tessék, itt van egy összehasonlítás arról, hogy melyik webszerver mennyi memóriát használ idle állapotban http://www.jvmhost.com/articles/memory-usage-comparison-of-java-application-servers-and-applications -- 1 jetty instance átlag 50 megabyte.
Erre jön még az alkalmazásod memóriaigénye, ami nagyban függ az alkalmazásod felépítésétől, az output nagyságától. Pl. ha csak az outputot nézzük (a belső struktúrát nem), akkor átlagosan 16 bites karakter hosszal számolva 20 megabyte memóriába 1 250 000 karakter fér bele. ami átlagos karakter per oldal alapján ~ 43 wikipedia oldalnak felel meg.
Erre jöjjön rá még az alkalmazásod belső struktúrája. Azért látni, hogy ez egy eléggé elnagyolt példa, egy kis weboldal nem fog 20 megabyteot elhasználni oldallekéréseknél, max pár megabyte. Nem beszélve arról, hogy statikus adatokat (pl. html template-eket amibe csak beszúrod a generált tartalmat) megosztasz a lekérdezések között, mert bent marad a memóriában. Pl. ha egy singletonban tárolod ezeket, és nem próbálod meg beolvasni a fájlból minden egyes oldallekéérésnél.
Szóval egy relative kis weboldal max pár megabyte memóriát fog lefoglalni requestenként.Plusz korlátozhatod a memóriát JVM beállításokkal (pl. max heap size) meg hasonlók, így ha kezd kifogyi a memóriából a webszerver, a GC majd elintézi a régi objektumokat. Szerintem elég neki kb 500 megabyte memóriát adni.
Szerintem ami a legfontosabb, ha kevés memóriát szeretnél használni, hogy ahol dinamikus string összefűzés van, ott használj StringBuildert vagy StringBuffert (nem emlékszem melyik a nem threadsafe de azt). Pl. A stringet több objektum, függvény állítja elő, vagy cikluson belül generálod. Különben a String + operátor új stringet hoz létre mindig. Kiemeltem, hogy dinamikusan, mert ha csak kényelmi szempontból egy ilyen változót deklarálsz, hogy
String fejlec = "Üdvözöllek \n" + "a\n" + "weboldalamon!"; akkor a fordító automatikusan egybefűzi ezeket a stringeket, úgyhogy no para.Szó ami szó, napi 200 lekérdezésre simán elég a 2GB, de ha spórolni akarsz adj rá 500 megabyte-ot, az is bőven elég lesz.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- CPU léghűtés kibeszélő
- Milyen autót vegyek?
- TCL LCD és LED TV-k
- Stabilan induló BIOS-t kaptak a nem induló Socket AM5-ös ASRock alaplapok
- Revolut
- Teljesen M5 SoC-családra vált az Apple Macbook Air és Pro
- Gitáros topic
- Anglia - élmények, tapasztalatok
- sziku69: Fűzzük össze a szavakat :)
- További aktív témák...
- BONTATLAN Új iPhone 17 PRO MAX 256-512GGB Független 1év Apple GARANCIA Deák Térnél Azonnal Átvehető.
- Kingston FURY Beast 16GB (1x16GB) DDR4 3200MHz
- Kingston FURY 32GB (2x16GB) DDR4 2400MHz (Beszámítás)
- Kingston FURY 32GB (2x16GB) DDR4 3200MHz (Beszámítás)
- Kingston FURY Beast 32GB (2x16GB) DDR4 3200MHz (Beszámítás)
- Dell Alienware AW2521HFLA 25" 240Hz Gamer Monitor 27% ÁFÁS - 0248BE
- PXN V9 Gen 2 Kormány+Pedál+Váltó BONTATLAN!
- HP Z4 G4 / Xeon W-2123, nvidia P4000, 24GB RAM, 256gb SSD, 4TB HDD
- Bomba ár! Dell Latitude E7450 - i5-5GEN I 8GB I 128GB SSD I 14" HD I HDMI I Cam I W10 I Garancia!
- HP EliteBook 830 G5, G6 13,3" i5, 16GB RAM, SSD, jó akku, számla, 6 hó gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


