JBoss EAP clustering

1.409 Aufrufe

Veröffentlicht am

Die JBoss Enterprise Application Platform (und das Upstream Projekt Wildfly aka JBoss AS 7) enthält ausgereifte Technologien um kritische Java EE Anwendungen Hochverfügbar auf Ebene der Middleware zu betreiben. Die enthaltenen Profile sind bereits für kleinere Cluster Topologien entsprechend konfiguriert. Mit dem Domain Mode des Applikationsservers lassen sich mehrere Server Instanzen komfortabel verwalten. Jedoch birgt ein Cluster eine hohe Komplexität, die Detailkenntnisse der grundlegenden Technologien wie JGroups und Infinispan erfordern. Im Vortrag werden die grundlegenden Konzepte beleuchtet und während des Vortrages wird gezeigt wie ein Cluster im Domain Mode mit der Enterprise Application Platform betrieben werden kann.

0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.409
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
305
Aktionen
Geteilt
0
Downloads
23
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

JBoss EAP clustering

  1. 1. Hochverfügbarkeit  mit  der                                                                                                              Enterprise  Applica9on    Pla;orm      Heinz  Wilming    heinz.wilming@akquinet.de    akquinet  AG  
  2. 2. Eigenscha:en  Java  Enterprise  Edi?on    zuverlässig  sicher  skalierbar  wartbar  
  3. 3. EAP6  !=  EAP5  +1    
  4. 4. Clustering  Gruppe  von  Servern,  die  gleiche  Dienste  erbringen.  Client  sieht  nur  den  Cluster  nicht  die  Server.  Ziele:  §  Fehlertoleranz  durch  Ausblenden    fehlerha:er  Server  (⇒  Hochverfügbarkeit,  HA)  §  Lastausgleich  durch  Verteilung    an  Server  Knoten  (⇒  Skalierbarkeit)  
  5. 5. Lastverteilung  ohne  Session  Replika?on        Skalierung  
  6. 6. Demo  
  7. 7. mod_cluster  AJP  Request  MCMP  Worker,  Context,  Load-­‐Metrics  HTTP  /  HTTPS  
  8. 8. mod_cluster  §  Dynamische  Konfigura?on  der  HTTPD  worker  Adver?se  mi`els  Mul?cast  §  Intelligente  Lastverteilung  Einbezug  von  Lastverteilungsmetriken    (cpu,  mem,  heap,  sessions,  receive-­‐traffic,  send-­‐traffic,  requests,  busyness)  §  Load-­‐Balancing  Groups  (aka.  Domäne)    
  9. 9. mod_cluster  vs.  mod_jk  §  mod_jk  benö?gt  sta?sche  Konfigura?on  §  Cluster  Knoten  hinzufügen  oder  engernen  (worker.proper?es)  §  Anwendung  hinzufügen  oder  engernen  (uriworkermap.proper?es)  
  10. 10. Session  Replika?on  
  11. 11. Demo  
  12. 12. Subsysteme  
  13. 13. Cluster–fähige  Applika?onen  Clustering  einer  EJB  Session-­‐Bean    @Stateless@Remote(ClusteredStateless.class)@org.jboss.ejb3.annotation.Clusteredpublic class ClusteredStatelessBean implements ClusteredStateless{ ... }  Zustandslose  Session  Beans  à  dynamische  Lastverteilung  auf  Clusterknoten  Zustandsbeha:ete  Session  Beans    à  Session  Affinity  à  Failover  Alterna?v:  Deployment-­‐Descriptor  (  META-­‐INF/jboss-­‐ejb3.xml)  
  14. 14. HTTP  Session  Replika?on  Replika?on  der  HTTP-­‐Session  stellt  sicher,  dass  die  Sessions  der  Klienten  auf  anderen  Cluster-­‐Knoten  verfügbar  sind  <web-app><distributable/></web-app>à  WEB-­‐INF/web.xml  
  15. 15. Cluster  Kommunika?on  
  16. 16. JGroups  Transport  
  17. 17. UDP  
  18. 18. TCP  
  19. 19. TUNNEL  
  20. 20. Replica?on  Um  Hochverfügbarkeit  zu  unterstützen,    müssen  die  Daten  innerhalb  des  Clusters    repliziert  werden  Infinispan  wird  intern  für  die    Replika?on  verwendet  
  21. 21. Replica?on  -­‐  Cache  mode  
  22. 22. Distribu?on-­‐  Cache  mode  
  23. 23. L1  -­‐  Cache  mode  
  24. 24. Invalida?on  -­‐  Cache  mode  
  25. 25. Cluster  Par??onen  
  26. 26. Op?mierung  •  JGroups  Distribu?on  enthält  vorkonfigurierte  Stacks  für  unterschiedliche  Cluster  Topologien  – UDP  vs.  TCP  •  Infinispan  – ASYNC  vs.  SYNC  – HTTP  Session  Replica?on  •  Replica?on  Trigger  •  Replica?on  Granularity  
  27. 27. Messaging  (HornetQ)  1. Zuverlässigkeit    bereits  empfangene  Nachrichten  werden  garan?ert  zugestellt  (gehen  nicht  verloren)  2.   höherer  Nachrichtendurchsatz  3.   Lastverteilung  4.   automa9sches  Failover  bestehender  Verbindungen  
  28. 28. HornetQ  -­‐  Lastverteilung  
  29. 29. HornetQ  -­‐  Failover  •  Ab  JBoss  EAP  6.1  (HornetQ  2.3)  -­‐  In-­‐Memory  Message  Replica?on  
  30. 30. 7.2.0.Final    8.0.0  alpha1  6.1.0  alpha  6.1.0  beta  6.1.0  Final  7.x    QA    Zero-­‐Dollar-­‐Subscrip9on  for  Development    Payed-­‐Subscrip9on  with  Support  for  Produc9on  Free  
  31. 31. akquinet  AG  –  Standort  Berlin  JAVA  Beratung  und  Coaching  Individuelle  Lösungen  Betriebsführung  Schulungen  Produktberatung                

×