1 / 15

JBoss Architektur

JBoss Architektur. Einführung Komplexpraktikum Softwaretechnik SS 2003 Christoph Pohl, Steffen G öbel Lehrstuhl Rechnernetze. Überblick. J2EE / EJB Java Management eXtensions (JMX) Interceptors, Dynamic Proxies & Reflection Ansatzpunkte zur Integration. vorerst ausklammern. Modifikation.

jody
Download Presentation

JBoss Architektur

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JBoss Architektur Einführung Komplexpraktikum Softwaretechnik SS 2003 Christoph Pohl, Steffen Göbel Lehrstuhl Rechnernetze

  2. Überblick • J2EE / EJB • Java Management eXtensions (JMX) • Interceptors, Dynamic Proxies & Reflection • Ansatzpunkte zur Integration Christoph Pohl - RN

  3. vorerst ausklammern Modifikation J2EE Dienste im JBoss Transactions (JTS/JTA) Security (JAAS) Naming (JNDI) Remote Management JMX Management Bus Implementation EJB Container EJB Container Databases Data Sources Messaging (JMS) Web Container (JSP / Servlet) EJB Container Christoph Pohl - RN

  4. MBean Server JBoss JMX Microkernel Proprietary Management Application JMX Management Application Web Browser Distributed Services Additional Management APIs C C JVM C PA C SNMP Agent Level CIM/WBEM Agent Service MBeans Instrumentation Level Resource MBeans Christoph Pohl - RN

  5. Interceptoren Proxies undInterceptoren Netzwerk Proxy Schicht Web Container Server(JBoss+) JSP Servlet Interceptoren Komponenten Container DB Zugriff Java-Clients Orthogonale Middleware-Dienste Orthogonale Middleware-Dienste Christoph Pohl - RN

  6. Interceptoren Client Proxy Interceptor Interceptor Server … • Konzept zur Informationsanreicherung von Aufrufen • Parameter & Ergebnisse; Client- & Server-Seite • Integration beliebiger Middleware-Dienste call() invoke(call) invoke(call) invoke(call) Netzwerk Christoph Pohl - RN

  7. Component Deployment & client-side Invocation EJB Archive Proxy Factory EJB Module EJB Deployer Naming (JNDI) Call URL Deployment Scanner java.lang.reflect.Proxy EJBHome InvocationHandler EJBRemote JBoss Server Interceptor Chain Network Christoph Pohl - RN

  8. JBoss Dynamic Proxies Client java.lang.reflect.Proxy javax.ejb.EJBObject example.Customer <<Dynamic Proxy>> $Proxy1 Server Container java.lang.reflect.InvocationHandler org.jboss.proxy.ClientContainer org.jboss.invocation.jrmp.interfaces. JRMPInvokerProxy org.jboss.invocation.jrmp.server. JRMPInvoker org.jboss.proxy. Interceptor Christoph Pohl - RN

  9. Invocation & Dispatching Client Server Proxy Invoker EJBContainer Local Call EJBContainer EJBContainer Instance Pool jmx Interceptor Chain . . . . . . HTTP IIOP ... MBean Server jmx jmx RMI/JRMP Middleware Service Proxy Invoker Middleware Service Middleware Service Christoph Pohl - RN

  10. Komponenten – Verwaltung Komponenten – Verwaltung Komponenten – Verwaltung Komponenten – Verwaltung Komponenten – Verwaltung Implementierungs – Verwaltung Implementierungs – Verwaltung Implementierungs – Verwaltung Implementierungs – Verwaltung Implementierungs – Verwaltung QoS Repository QoS Repository QoS Repository QoS Repository QoS Repository Vertragsmanager Vertragsmanager Vertragsmanager Vertragsmanager Vertragsmanager Kommunikations Proxy Kommunikations Proxy Kommunikations Proxy Kommunikations Proxy Kommunikations Proxy Instanz der Komp. – Impl. 1 Instanz der Komp. – Impl. 1 Instanz der Komp. – Impl. 1 Instanz der Komp. – Impl. 1 Instanz der Komp. – Impl. 1 Instanz der Komp. – Impl. 2 Instanz der Komp. – Impl. 2 Instanz der Komp. – Impl. 2 Instanz der Komp. – Impl. 2 Instanz der Komp. – Impl. 2 Ressourcen- Proxy Ressourcen- Proxy Ressourcen- Proxy Ressourcen- Proxy Ressourcen- Proxy Ressourcen – Verwaltung Ressourcen – Verwaltung Ressourcen – Verwaltung Ressourcen – Verwaltung Ressourcen – Verwaltung COMQUAD-Konzept: Grobe Architektur Verwaltung der Komponenten - Implementierungen Verwaltung der QoS - Eigenschaften • Verträge zwischen • Komponenten • Reservierung der • Ressourcen Überwachung des Zugriffs Christoph Pohl - RN

  11. Überlegungen zur Integration • Interceptoren als Hauptansatzpunkt für Vertragsmanager • ProxyFactory muss nun auch QoS-Profile unterstützen • Überwachung von Kommunikation und Ressourcenverbrauch • Generische (statische) Dienste werden vom JMX Server als MBeans instanziiert • QoS-Repository, Monitoring... • 1 Containerinstanz pro Deployment einer Komponentenimplementierung Christoph Pohl - RN

  12. Architecture Description Languages zahlreich Instanzebene meist kaum adressiert Anlehnung an CORBA Components Model CAD Architekturbeschreibung von Komonentennetzen * Component Specification 1 supported 1..* * realization Component Interface Component Implementation 1 * installation Installed Component 1 * instance Component Object [Cheeseman/Daniels] Christoph Pohl - RN

  13. Komponenten – Implementierungen A1 Komponenten – Impl. A2 .spec Komponenten – Impl. B1 Profil B1.1 Profil B1.2 .impl Profil A1.1 Profil A1.2 Profil A1.3 Profil A2.1 Profil A2.2 provides provides provides provides provides provides provides provides provides provides Komponenten – Spezifikation B Komponenten – Spezifikation A uses uses uses uses uses uses uses uses uses uses Funktionaler Bestandteil resources resources resources resources resources resources resources resources resources resources .comquad Komponenten – Implementierungen B2 .cqml Profil B2.1 Profil B2.2 Profil B2.3 Funktionaler Bestandteil Funktionaler Bestandteil Funktionaler Bestandteil Deskriptoren Assembly Christoph Pohl - RN

  14. Minimal-JBoss Sources Binaries run.sh / run.bat Eine von mehreren Konfigurationen Ant Build-Skript http://ant.apache.org/ Christoph Pohl - RN

  15. Entwicklungsumgebung • Eclipse (http://www.eclipse.org) • Apache Ant (http://ant.apache.org) • build.xml • XDoclet (http://xdoclet.sf.net) • Spezielle Javadoc-Kommentare • Generierung von MBean-Interfaces und EJB-Deployment-Descriptoren und Remote-/Home-Interfaces Christoph Pohl - RN

More Related