NAGY TELJESÍTM. Szerzők Dévai. István Automatizálási. és s Alkalmazott Informatikai Tanszék



Hasonló dokumentumok
webalkalmazások fejlesztése elosztott alapon

JAVA webes alkalmazások

április 24. INFO Savaria április 24. INFO Savaria április 24. INFO Savaria

A Népszámlálás infokommunikációs háttere (Miért érdekes a Népszámlálás?) Kópházi József Központi Statisztikai Hivatal

Osztott rendszerek, Java EE. Általános bevezető

Teljesítménymodellezés

DSD DSD. Egy országos méretű orvosi adatbázissal kapcsolatos informatikai kihívások. Kovács László Pataki Balázs Pataki Máté MTA SZTAKI DSD

Csoportos üzenetszórás optimalizálása klaszter rendszerekben

TECHNIKAI SEGÉDLET. EMIR Azonosító: TÁMOP /1/A Apertus Közalapítvány

Hálózati réteg. WSN topológia. Útvonalválasztás.

Session-replikációs alternatívák WebLogic környezetben. Alerant Informatikai Zrt szeptember 27.

MVC Java EE Java EE Kliensek JavaBeanek Java EE komponensek Web-alkalmazások Fejlesztői környezet. Java Web technológiák

A kezdeményezés célkitűzése

JSF alkalmazások teljesítményhangolása JMeter és dynatrace segítségével

Szoftver Tervezési Dokumentáció. Nguyen Thai Binh

Simon Balázs Dr. Goldschmidt Balázs Dr. Kondorosi Károly. BME, Irányítástechnika és Informatika Tanszék

ALKALMAZÁS KERETRENDSZER

Teljesítménymodellezés

Üzleti folyamatok rugalmasabb IT támogatása. Nick Gábor András szeptember 10.

2011. November 8. Boscolo New York Palace Budapest. Extrém teljesítmény Oracle Exadata és Oracle Exalogic rendszerekkel

Oracle Containers for Java - j2ee alkalmazás szerver funkciók. Molnár Balázs Oracle Hungary

Web harvesztelés. Automatikus módszerekkel

30 MB INFORMATIKAI PROJEKTELLENŐR

TELJESÍTÉNYMÉRÉS FELHŐ ALAPÚ KÖRNYEZETBEN AZURE CLOUD ANALÍZIS

A Java EE 5 plattform

CRA - Cisco Remote Access

Google App Engine az Oktatásban 1.0. ügyvezető MattaKis Consulting

Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon

NIIF Központi Elosztott Szolgáltatói Platform

The Power To Develop. i Develop

Tarantella Secure Global Desktop Enterprise Edition

Adatbázis rendszerek I

Magyar Posta központi Oracle infrastruktúrája VMware alapokon

Moodle -egy ingyenes, sokoldalú LMS rendszer használata a felsőoktatásban

Web-fejlesztés NGM_IN002_1

Elosztott rendszer architektúrák

A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

Teljesítménymodellezés

Szoftverarchitektúrák. 12. Sorozat portál (követelmény specifikáció)

Alkalmazásokban. Dezsényi Csaba Ovitas Magyarország kft.

A számítógép-hálózat egy olyan speciális rendszer, amely a számítógépek egymás közötti kommunikációját biztosítja.

kodolosuli.hu: Interaktív, programozást tanító portál BALLA TAMÁS, DR. KIRÁLY SÁNDOR NETWORKSHOP 2017, SZEGED

extreme Transaction Processing

Adatbáziskezelő-architektúrák. Adatbázisok elmélete 2. előadás Gajdos Sándor

(kernel3d vizualizáció: kernel245_graph.mpg)

Döbrönte Zoltán. Data Vault alapú adattárház - Fél óra alatt. DMS Consulting Kft.

Fejlesztés és üzemeltetés WebLogic platformon

Desktop virtualizációs pilot projekt ajánlat

SUSE Success Stories Varga Zsolt

Programozó, csoportvezető

SCHNETv6 IPv6 a Schönherzben. 5/7/12 Tóth Ferenc - IPv6 a Schönherzben 1

Grafikus keretrendszer komponensalapú webalkalmazások fejlesztéséhez

Debreceni Egyetem Matematikai és Informatikai Intézet. 13. Védelem

ProofIT Informatikai Kft Budapest, Petzvál J. 4/a

Non-stop hozzáférés az üzleti információkhoz bárhol, bármikor és bármilyen eszközzel

Bevezetés a párhuzamos programozási koncepciókba

BIG DATA ÉS GÉPI TANULÁS KÖRNYEZET AZ MTA CLOUD-ON KACSUK PÉTER, NAGY ENIKŐ, PINTYE ISTVÁN, HAJNAL ÁKOS, LOVAS RÓBERT

Készítette: Enisz Krisztián, Lugossy Balázs, Speiser Ferenc, Ughy Gergely

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer

Grayteq. Grayteq DLP Teljesítmény Benchmark. Grayteq DLP Benchmark. Sealar Corporate Proprietary Commercial-in-confidence

Üdvözlöm Önöket a Konferencián!

Webszolgáltatások kommunikációs overhead-jének becslése

Térinformatika adatbázisból. GisOpen 2007 konferencia, március 12-14

Élő webes alkalmazások rendszerfelügyelete cím- és tartalomteszteléssel

Software Defined technológiák használata Oracle adatbázis konszolidációhoz

IBM felhő menedzsment


WEB2GRID: Desktop Grid a Web 2.0 szolgálatában

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

Nyílt forráskódú online térképi szolgáltatások fejlesztése a FÖMI-ben

Adatbázis és alkalmazás konszolidáció Oracle SPARC T4/5 alapon

Tipikus időbeli internetezői profilok nagyméretű webes naplóállományok alapján

Mai program. Web Technológiák. Webalkalmazások. Webalkalmazás, mint UI

Felhő alapú hálózatok Konténerek orkesztrálása Simon Csaba. Budapesti Műszaki és Gazdaságtudományi Egyetem

Rendszergazda kézikönyv

A Magyar Posta Zrt Hyper-V infrastruktúrája. Bene Zsolt Infrastruktúra fejlesztő rendszermérnök Magyar Posta ZRT

Oracle9i Alkalmazás Szerver Üzleti folyamat integráció. Molnár Balázs Vezető értékesítési konzultáns Oracle Hungary

Népszámlálás 2011 Internetes adatgyűjtéssel

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer

Üzleti kritikus alkalmazások Novell Open Enterprise Serveren

Vállalati információs rendszerek I, MIN5B6IN, 5 kredit, K. 4. A meghirdetés ideje (mintatanterv szerint vagy keresztfélében):

Automatikus infrastruktúra menedzsment és alkalmazástelepítés

SZIE E-LEARNING STRATÉGIA 2.0

Gigabit/s sebess«gű internetkapcsolatok m«r«se b ng«szőben

Termékbemutató prospektus

Hálózati operációs rendszerek II.

INFORMATIKAI RENDSZER FEJLESZTÉSE. TÁMOP D-12/1/KONV A Szolnoki Főiskola idegen nyelvi képzési rendszerének fejlesztése

Az Invitel adatközponti virtualizációja IBM alapokon

Junior Java Képzés. Tematika

Felhőszolgáltatások megvalósítása PureSystems eszközökön

Valós idejű megoldások: Realtime ODS és Database In-Memory tapasztalatok

Feltörekvő technológiák: seam, drools, richfaces és társai a JBossban

Informatikus, Webfejlesztő. Nagy Gusztáv

Elektronikus Információs és Nyilvántartási Rendszer a Doktori Iskolák fiatal kutatói részére

Új komponens a Talend Palettán: Starschema SAP Connector. Csillag Péter, Földi Tamás Starschema Kft.

Üzleti szabálykezelés

Webszolgáltatások teljesítménymodellezése Java EE és.net platformon

Mikrorendszerek tervezése

Átírás:

NAGY TELJESÍTM TMÉNYŰ WEBALKALMAZÁSOK KÉSZÍTÉSE SE JAVA TECHNOLÓGI GIÁVAL Szerzők Dévai István Automatizálási és s Alkalmazott Informatikai Tanszék

Az előad adás s tartalma Elméleti áttekintés Nagy teljesítményű webes megoldások Lehetőségek Java platform esetén Alkalmazásrétegbeli gyorsítótárazás Mérések a Clusterforum alkalmazással HSQLDB alapon PostgreSQL alapon Gyakorlati tapasztalatok, jótanácsok 2/28

Bevezetés Alkalmazások Híroldalak Web alapú E-mail alkalmazások Fórumok Aukciós és közösségi portálok Elvárásaink Magas egyidejű felhasználószám esetén is rövid válaszidők Szolgáltatáskiesés nem engedhető meg 3/28

Néhány definíci ció Skálázhatóság Addícionális hardver beillesztése esetén közel lineáris teljesítménynövekedés Scale-up Scale-out Magas rendelkezésre állás Négykilences = 99.99% egy évben Mennyire gyorsan javítható a rendszer 4/28

Webes kiszolgáló rendszer 5/28

Webes kiszolgálás s Java alapokon A kiszolgálás alapja: JSR-154 szabványt követő Servlet konténer Az együttműködés lehetőségei: Terhelésmegosztás Automatikus átkapcsolás (failover) Session replikáció Elosztott gyorsítótárazás 6/28

Terhelésmegoszt smegosztás és failover A terhelés megosztása történhet: A kérések száma szerint Az egy csomóponton található sessionök száma szerint Egy csomópont hálózati vagy CPU terhelése szerint Az adatok partícionálása szerint A failover megvalósításához szükséges: Csoporttagság folyamatos nyilvántartása 7/28

A session kezelése Ragadós session kezelés Session replikáció Topológiák (Teljes, N-Backup, Partícionált, Gyűrű, Elosztott tár) Granularitás Szinkronitás Trigger események 8/28

Nyílt forrásk skódú megoldások Tomcat 6.x Glassfish V2 JBoss 5 Klaszter keretrendszer Apache Tribes Shoal (JXTA peer to peer alapon) JGroups + JBoss Cache Támogatott replikációs topológiák All-to-all 1-Backup Elosztott tár Gyűrű Partícionált Elosztott tár A replikáció granularitása Objektum Objektum Objektum vagy mező Farming Nincs (jelenleg nem működik, külső szkriptekkel lehetséges) Van Van + Teljes farmon való hot-deploy lehetőség Stateful Session Bean replikáció Nincs Van Van 9/28

Alkalmazásr srétegbeli gyorsítótáraz razás A Java platform előnye Számos (nyílt forráskódú) gyorsítótár implementáció Jól rétegzett alkalmazások A gyorsítótárazás céljai: Cluster csomópontok CPU és IO terhelésének csökkentése Az adatbázisszerver tehermentesítése Az alkalmazásszerver vagy a felhasznált külső rendszerek tehermentesítése 10/28

Teljesítm tménynövelés gyorsítótáraz razással Mennyi erőforrást igényel a gyorsítótárazandó adatok újbóli előállítása? Milyen időközönként válik érvénytelenné az adat? (Írás/olvasás aránya) Mennyire friss információkra van szüksége a felhasználónak? Mennyi a rendelkezésre álló memória a csomópontokon és mennyi az összes gyorsítótárazandó adat? Milyen a kérések lokalitása? (találat/hozzáférés arány) Mivel kulcsoljuk a gyorsítótárat (egyszerű vagy összetett kulcs?) 11/28

Cache megoldások I. Weboldal cache Használata dinamikus tartalom esetén nem jellemző Kulcsolási nehézségek Webkomponens cache Jó hatásfok Tipikus alkalmazások: külső rendszer, bejelentkezett felhasználók listája, stb. 12/28

Cache megoldások II. Üzleti objektum cache Entitások halmaza Egyszerű kulcsolás Alkalmazásfüggő hatásfok Adatbázis kérés cache A legtöbb alkalmazásban nagyon jól alkalmazható Egyszerű kulcsolás 13/28

Gyorsítótár keretrendszerek EHCache OSCache JBoss Treecache Weboldal cache Van Van Van Webkomponens cache Van Van Van Üzleti objektum cache Van Hibernate esetén nem támogatott Van Adatbázis kérés cache Van Hibernate esetén nem támogatott Van Eloszott működést is támogat Igen Igen, de Hibernate esetén nem támogatott Igen Tranzakcionalitás Nincs Nincs Igen, JTA szerverrel 14/28

Clusterforum teszt alkalmazás Klasszikus fórum oldalak modellezése Entitásmodell: Cél: teljesítmény növelése klaszterezéssel és alkalmazásrétegbeli gyorsítótárazással 15/28

Clusterfórum rum képernyőkép p I. 16/28

Clusterfórum rum képernyőkép p II. 17/28

Felhasználói i modell A modell: Implementáció Apache JMeter Elosztott tesztelés 18/28

19/28

Mérési összeállítás Minden gép azonos hardver kiépítésű (Intel P4 Dual Core 3.04Ghz, 2G RAM, 100Mbit LAN) A felhasznált gépek: 1 terheléselosztó (Apache HTTPD + mod_jk) 1 adatbázisszerver (HSQLDB vagy Postgres) 1-4 klaszter csomópont (Apache Tomcat 6.0.16 + EHCache 1.4.1) 6 JMeter tesztgép 20/28

Mod_jk képernyőkép 21/28

Mérés s I. Az adatbázis nem szűk keresztmetszet (HSQLDB) 1000 900 800 700 600 500 400 KiszolgIdőÁtlag [msec] KiszolgIdőTop90% [msec] Teljesítmény [kérés/sec] 300 200 100 0 1 2 3 4 Csomópontok száma 22/28

Mérés s II. Az adatbázis mint szűk keresztmetszet (PostgreSQL) 500 450 400 350 300 250 200 KiszolgIdőÁtlag [msec] KiszolgIdőTop90% [msec] Teljesítmény [kérés/sec] 150 100 50 0 1 2 3 4 Csomópontok száma 23/28

Mérés s III. Szűk keresztmetszet feloldása az üzleti objektumok gyorsítótárazásával 500 450 400 350 300 250 200 150 100 KiszolgIdőÁtlag [msec] KiszolgIdőTop90% [msec] Teljesítmény [kérés/sec] 50 0 1 2 3 4 Csomópontok száma 24/28

Mérés s IV. Szűk keresztmetszet feloldása az üzleti objektumok és az adatbáziskérések gyorsítótárazásával 600 500 400 300 200 KiszolgIdőÁtlag [msec] KiszolgIdőTop90% [msec] Teljesítmény [kérés/sec] 100 0 1 2 3 4 Csomópontok száma 25/28

A mérések m összefoglalásasa 600 500 400 300 KiszolgIdőTop90% [msec] Teljesítmény [kérés/sec] 200 100 0 Nincs cache Domain cache Query cache 26/28

Jótanácsok és s kitekintés Tapasztalatok Terhelendő és tesztelő csomópontok aránya Hibernate query cache hiányosságok Gzip használata Kitekintés Oracle Coherence Terracotta DSO XSTM 27/28

Végül Köszönöm a figyelmet várom kérdéseiket! 28/28