Copyright ©  2007 KOMIX s.r.o.  Martin Ptáček , KOMIX s.r.o. ptacek @komix.cz X33EJA  Vysoká dostupnost JEE Systémů
Obsah  Základní principy zajištění vysoké dostupnosti Principy pro zajištění vysoké dostupnosti JEE Architektury vysoce do...
<ul><li>Jedna ze základních vlastností JEE </li></ul><ul><li>Schopnost dané technologie přírůstkovým způsobem zvyšovat sle...
<ul><li>Běžná dostupnost (Normal Availability) </li></ul><ul><ul><li>Většina pracovních stanic </li></ul></ul><ul><ul><li>...
<ul><li>Základní </li></ul><ul><ul><li>Zálohované zdroje (UPS) </li></ul></ul><ul><ul><li>Disková duplicita (RAID) </li></...
<ul><li>Replikace služby (Replication of Service) </li></ul><ul><ul><li>Aplikace či služba dostupná na více serverech. </l...
<ul><li>Aplikace se snadným zajištěním vysoké dostupnosti </li></ul><ul><ul><li>Bezestavový design business logiky či serv...
<ul><li>Skupina komponent které se navenek tváří jako jeden celek </li></ul><ul><li>Skupiny komponent jsou také nazývány  ...
<ul><li>Metoda pro vyvažování požadavků  ( rozložení zátěže )  mezi jednotlivými uzly clusteru </li></ul><ul><li>Load-bala...
<ul><li>Metoda pro podporu odolnosti proti chybám </li></ul><ul><li>Pokud uzel „node“ neodpoví v definovaném intervalu, po...
<ul><li>Replikace (sdílení) stavu mezi jednotlivými uzly („nodes“) clusteru </li></ul><ul><li>Bezestavové (Stateless) apli...
Architektury vysoce dostupných systémů JEE EJB Clustering, Naming Service Clustering HTTP/HTTPS RMI/IIOP JDBC JDBC JDBC/Pr...
Architektury vysoce dostupných systémů JEE Instance Clustering, Web Clustering HTTP/HTTPS JDBC JDBC JDBC/Proprietary Load-...
Architektury vysoce dostupných systémů JEE Instance Clustering, Web Clustering Load-Balancer HW Apache IIS DMZ Application...
<ul><li>Speciální HW </li></ul><ul><li>Apache </li></ul><ul><ul><li>mod_jk modul, AJP protokol </li></ul></ul><ul><ul><li>...
<ul><li>JEE je pouze jedna z technologií, která nám dnes umožňuje vytvářet vysoce dostupné systémy </li></ul><ul><li>JEE j...
Otázky a odpovědi <ul><li>Otázky ? </li></ul>
Děkuji za vaši pozornost Martin Ptáček [email_address] +420 225 989 981 KOMIX s.r.o. Holubova 1, 150 00 Praha 5 www.komix.cz
Upcoming SlideShare
Loading in …5
×

2010 X33EJA Vysoká Dostupnost JEE Systémů

940 views

Published on

2010 X33EJA Vysoká Dostupnost JEE Systémů
ČVUT

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
940
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

2010 X33EJA Vysoká Dostupnost JEE Systémů

  1. 1. Copyright © 2007 KOMIX s.r.o. Martin Ptáček , KOMIX s.r.o. ptacek @komix.cz X33EJA Vysoká dostupnost JEE Systémů
  2. 2. Obsah Základní principy zajištění vysoké dostupnosti Principy pro zajištění vysoké dostupnosti JEE Architektury vysoce dostupných systémů JEE Závěrečné shrnutí Otázky a odpovědi, Diskuse
  3. 3. <ul><li>Jedna ze základních vlastností JEE </li></ul><ul><li>Schopnost dané technologie přírůstkovým způsobem zvyšovat sledované parametry v případě, že nastane taková potřeba. </li></ul><ul><li>Vlastnost technologie či implementace, která umožňuje její růst se zvýšeným využitím. </li></ul><ul><li>Příklady technologií a implementací </li></ul><ul><ul><li>Database </li></ul></ul><ul><ul><li>Application Server, Web Server, Telecomunication atd... </li></ul></ul>Základní principy zajištění vysoké dostupnosti Co je to škálovatelnost (Scalability)
  4. 4. <ul><li>Běžná dostupnost (Normal Availability) </li></ul><ul><ul><li>Většina pracovních stanic </li></ul></ul><ul><ul><li>Systémy s limitovanou ochranou proti chybám HW </li></ul></ul><ul><li>Vysoká dostupnost (High Availability HA) </li></ul><ul><ul><li>Různé stupně eliminace výpadků charakteristických pro systémy běžné dostupnosti </li></ul></ul><ul><ul><li>Redundantní HW komponenty, dodatečný SW pro detekci chyb </li></ul></ul><ul><ul><li>Odolnost vůči chybě ( Fault tolerance ) </li></ul></ul><ul><ul><ul><li>Schopnost pracovat „navzdory“ výskytu chyby </li></ul></ul></ul>Základní principy zajištění vysoké dostupnosti Co je to dostupnost (Availability)
  5. 5. <ul><li>Základní </li></ul><ul><ul><li>Zálohované zdroje (UPS) </li></ul></ul><ul><ul><li>Disková duplicita (RAID) </li></ul></ul><ul><li>Pokročilé </li></ul><ul><ul><li>Duplicita či virtualizace síťových připojení </li></ul></ul><ul><ul><li>Hot-standby procesory </li></ul></ul><ul><li>Nejvyšší stupeň </li></ul><ul><ul><li>Úplná duplikace systému, obvykle kombinovaná s duplicitou jednotlivých komponent </li></ul></ul><ul><li>Plná záloha systému nepatří mezi řešení vysoké dostupnosti ! </li></ul>Základní principy zajištění vysoké dostupnosti Způsoby zajištění vysoké dostupnosti
  6. 6. <ul><li>Replikace služby (Replication of Service) </li></ul><ul><ul><li>Aplikace či služba dostupná na více serverech. </li></ul></ul><ul><ul><li>V případě výpadku je služba nebo aplikace dostupná na ostatních uzlech. </li></ul></ul><ul><ul><li>Load-balancing </li></ul></ul><ul><li>Převzetí služby (Failover) </li></ul><ul><ul><li>Služba či aplikace dostupná na primárním uzlu. </li></ul></ul><ul><ul><li>V případě selhání primárního uzlu přebírá identitu (funkčnost) sekundární uzel. </li></ul></ul><ul><ul><ul><li>Failback </li></ul></ul></ul><ul><ul><ul><ul><li>Proces navrácení do původního stavu po obnovení funkčnosti primárního uzlu </li></ul></ul></ul></ul>Základní principy zajištění vysoké dostupnosti Nejvyšší stupeň zajištění vysoké dostupnosti
  7. 7. <ul><li>Aplikace se snadným zajištěním vysoké dostupnosti </li></ul><ul><ul><li>Bezestavový design business logiky či servisní vrstvy </li></ul></ul><ul><ul><li>Cache na úrovni dat (minimalizace IO operací) </li></ul></ul><ul><ul><ul><li>JPA Provider (Hibernate + Ehcache) </li></ul></ul></ul><ul><ul><li>Minimalizace distribuovaných transakcí </li></ul></ul><ul><ul><li>Snadná paralelizace na úrovni business logiky </li></ul></ul><ul><ul><li>Použití relativních odkazů při implementaci webové vrstvy </li></ul></ul><ul><li>Kvalitní aplikační server </li></ul><ul><ul><li>Podpora škálovatelnost, clustering </li></ul></ul><ul><ul><li>Load-balancing, Failover principy pro jednotlivé části JEE </li></ul></ul><ul><ul><li>Snadná konfigurace více instancí na jednom serveru </li></ul></ul><ul><ul><li>Licenční politika </li></ul></ul>Principy pro zajištění vysoké dostupnosti JEE Předpoklady
  8. 8. <ul><li>Skupina komponent které se navenek tváří jako jeden celek </li></ul><ul><li>Skupiny komponent jsou také nazývány </li></ul><ul><ul><li>„ nodes“ nebo „members“ </li></ul></ul><ul><li>Všechny skupiny komponent jsou identicky nakonfigurovány </li></ul><ul><li>Všechny skupiny komponent sdílí (sledují) společný cíl </li></ul>Principy pro zajištění vysoké dostupnosti JEE Co je to cluster?
  9. 9. <ul><li>Metoda pro vyvažování požadavků ( rozložení zátěže ) mezi jednotlivými uzly clusteru </li></ul><ul><li>Load-balancing algoritmy </li></ul><ul><ul><li>Round Robin </li></ul></ul><ul><ul><li>First Available </li></ul></ul><ul><ul><li>Speciální algoritmy </li></ul></ul><ul><ul><li>Varování před pokusy zneužití výkonu (Intrusion Detection Systém IDS) </li></ul></ul><ul><li>HW nebo SW Load-balancer </li></ul>Principy pro zajištění vysoké dostupnosti JEE Co je to Load-balancing?
  10. 10. <ul><li>Metoda pro podporu odolnosti proti chybám </li></ul><ul><li>Pokud uzel „node“ neodpoví v definovaném intervalu, požadavek je automaticky směrován na jiný uzel </li></ul><ul><li>Failback </li></ul><ul><ul><li>Periodické ověřování činnosti primárního uzlu a návrat jeho dominantního postavení v případě dostupnosti </li></ul></ul>Principy pro zajištění vysoké dostupnosti JEE Co je to Failover?
  11. 11. <ul><li>Replikace (sdílení) stavu mezi jednotlivými uzly („nodes“) clusteru </li></ul><ul><li>Bezestavové (Stateless) aplikace replikaci stavu nepotřebují </li></ul><ul><ul><li>Stav uložen pouze v databázi. </li></ul></ul><ul><li>Replikace nutná při použití </li></ul><ul><ul><li>Stateful EJB, Cache (JPA Provider), HTTP Session </li></ul></ul><ul><ul><ul><li>Synchronní, Asynchronní </li></ul></ul></ul><ul><ul><li>HTTP Session Replication </li></ul></ul><ul><ul><ul><li>Sticky Session – ideální v kombinaci s asynchronní replikací </li></ul></ul></ul>Principy pro zajištění vysoké dostupnosti JEE Co je to State Replication?
  12. 12. Architektury vysoce dostupných systémů JEE EJB Clustering, Naming Service Clustering HTTP/HTTPS RMI/IIOP JDBC JDBC JDBC/Proprietary RMI/IIOP Server Instance2 EJB Container Enterprise Bean WEB Browser Server Instance1 Web Container Server Instance3 EJB Container Enterprise Bean Database Java C lient
  13. 13. Architektury vysoce dostupných systémů JEE Instance Clustering, Web Clustering HTTP/HTTPS JDBC JDBC JDBC/Proprietary Load-Balancer HW Apache IIS HTTP/HTTPS nebo AJP State Replication WEB Browser Database Server Instance1 Web Container EJB Container Enterprise Bean Server Instance1 Web Container EJB Container Enterprise Bean
  14. 14. Architektury vysoce dostupných systémů JEE Instance Clustering, Web Clustering Load-Balancer HW Apache IIS DMZ Application Cluster FireWall HTTP/HTTPS Internet Intranet WEB Browser Database
  15. 15. <ul><li>Speciální HW </li></ul><ul><li>Apache </li></ul><ul><ul><li>mod_jk modul, AJP protokol </li></ul></ul><ul><ul><li>SW Load-balancing </li></ul></ul><ul><ul><li>SW Failover </li></ul></ul><ul><ul><li>Sticky Session </li></ul></ul><ul><li>IIS </li></ul><ul><li>SUN WebServer </li></ul><ul><li>IBM WebServer (Apache) </li></ul>Architektury vysoce dostupných systémů JEE Load-balancer Implementation
  16. 16. <ul><li>JEE je pouze jedna z technologií, která nám dnes umožňuje vytvářet vysoce dostupné systémy </li></ul><ul><li>JEE je a od začátku byla vymýšlena a utvářena právě s ohledem na snadnou implementaci mission-critical systémů s vysokou dostupností </li></ul><ul><li>Existující technologie, API a implementace připravené pro distribuované prostředí </li></ul><ul><ul><li>Application Servers </li></ul></ul><ul><ul><li>JPA Provider (Hibernate, TopLink) </li></ul></ul><ul><ul><li>Distribuované cache (Ehcache) </li></ul></ul>Závěrečné shrnutí Je JEE ideální pro tvorbu vysoce dostupných systémů?
  17. 17. Otázky a odpovědi <ul><li>Otázky ? </li></ul>
  18. 18. Děkuji za vaši pozornost Martin Ptáček [email_address] +420 225 989 981 KOMIX s.r.o. Holubova 1, 150 00 Praha 5 www.komix.cz

×