SE2-10-Entwurfsmuster-2 15



Ähnliche Dokumente
Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Internetanbindung von Datenbanken

Java Enterprise Architekturen Willkommen in der Realität

Java 2, Enterprise Edition Einführung und Überblick

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013

Softwareentwicklung mit Enterprise JAVA Beans

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis

Entwicklung von Web-Anwendungen auf JAVA EE Basis

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke J.M.Joller 1

Der Java Server beinhaltet Container für EJB, Servlet und JSP, darüber hinaus unterstützt er diejee 1.3 Version.

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

WebSphere Application Server Installation

Online Banking System

Haben Sie schon einmal aus einem ScreenCobol Requestor ein Java Programm aufgerufen?

Test zur Bereitschaft für die Cloud

Möglichkeiten der verschlüsselten -Kommunikation mit der AUDI AG Stand: 11/2015

Ihre Stimme für 7 % für Kinder!

Jürgen Schwab, debis Systemhaus

Transparente Hausverwaltung Marketingschmäh oder doch: eine neue Dimension der Dienstleistung?

Exchange Routing. Heino Ruddat Senior Solution Architect Invenate GmbH. Agenda. Unterschiede zu Exchange 5.5 Architektur

Outlook 2013

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

OSEK-OS. Oliver Botschkowski. PG AutoLab Seminarwochenende Oktober AutoLab

Verfügbarkeit von Applikationen und Failover Szenarien. Winfried Wojtenek.

Reporting Services und SharePoint 2010 Teil 1

OLXFil er Anleitung

Anlegen eines SendAs/RecieveAs Benutzer unter Exchange 2003, 2007 und 2010

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail:

Benachrichtigungsmöglichkeiten in SMC 2.6

Lizenzierung von Windows Server 2012

mysoftfolio360 Handbuch

2 Datei- und Druckdienste

Client/Server-Systeme

Konzept Projekt Lisa

Zend PHP Cloud Application Platform

Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen. Wir bringen Qualität. Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen

ELitE Bestell- und Lieferplattform für Informationen & Literatur

Konfigurationslanleitung für J2EE und Eclipse im KBS-Pool

Content Management System mit INTREXX 2002.

Erfassung von Umgebungskontext und Kontextmanagement

Net2 Entry. Ein Leitfaden für den Errichter. Eine Türsprechanlage für vielseitige Sicherheit und Gebäudemanagement

6.9 Java Server Pages

Referenz-Konfiguration für IP Office Server. IP Office 8.1

Individuelle Formulare

Kurzanleitung OOVS. Reseller Interface. Allgemein

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

ANYWHERE Zugriff von externen Arbeitsplätzen

HighQSoft GmbH AVALON Distributor. Skalierbarkeit und Ausfallsicherheit. Dieter Müller

Lizenzierung von System Center 2012

IBM Software Demos Tivoli Composite Application Manager for SOA

Option 1: Hinzufügen eines Schritts zur Bearbeitungsliste... 2

Outlook Express: Einrichtung Account

ACDSee Pro 2. ACDSee Pro 2 Tutorials: Übertragung von Fotos (+ Datenbank) auf einen anderen Computer. Über Metadaten und die Datenbank

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Bedienungsanleitung PC-Konfigurationssoftware des ID Inclinometers

Windows Server 2012 R2 Essentials & Hyper-V

Step by Step Remotedesktopfreigabe unter Windows Server von Christian Bartl

Application Performance Management. Auch eine Frage des Netzwerkes?

Systemanforderungen für MSI-Reifen Release 7

INDEX. Öffentliche Ordner erstellen Seite 2. Offline verfügbar einrichten Seite 3. Berechtigungen setzen Seite 7. Öffentliche Ordner Offline

CADEMIA: Einrichtung Ihres Computers unter Windows

SAMMELN INVENTARISIEREN UND TEILEN IN DER CLOUD GRATIS AUSPROBIEREN

Windows Small Business Server (SBS) 2008

MICROSOFT OUTLOOK 2010

ACDSee Pro 3-Tutorials: Fotos (+ Datenbank) auf einen anderen Computer bringen

HANDBUCH LSM GRUNDLAGEN LSM

Anbindung Borland CaliberRM

Lizenzierung von Windows Server 2012 R2. Lizenzierung von Windows Server 2012 R2

Installationsanleitung

Personalentwicklung. Umfrage zur Personalentwicklung. Februar Cisar - consulting and solutions GmbH. In Zusammenarbeit mit

System Center Essentials 2010

Man liest sich: POP3/IMAP

Fragen zur GridVis MSSQL-Server

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste

QUICK INSTALLATION GUIDE

Lokale Installation von DotNetNuke 4 ohne IIS

White Paper. Konfiguration und Verwendung des Auditlogs Winter Release

Herzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de (c) Michael Behrendt -

Installation der Eicon Diva PCI Karte unter Windows XP

TimeSafe Installationsanleitung mit InfotechStart

Anforderungen an die HIS

Quick Guide Mitglieder

serverlist serveridgetbyport serverdelete servercreate serverstart serverstop serverprocessstop serverinfo serverrequestconnectioninfo serveredit

SANDBOXIE konfigurieren

SZENARIO BEISPIEL. Implementation von Swiss SafeLab M.ID mit Citrix. Redundanz und Skalierbarkeit

HAUSER Fleet Management. Kostenkontrolle und Prozessoptimierung Ihrer Druckverwaltung

4D Server v12 64-bit Version BETA VERSION

Internet online Update (Internet Explorer)

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7

Der lokale und verteilte Fall

w3lib - einfach Software entwickeln!

Kurzanweisung für Google Analytics

Konfiguration einer Sparkassen-Chipkarte in StarMoney

Microsoft SharePoint 2013 Designer

Transkript:

Architektur und Skalierbarkeit SE2-10-Entwurfsmuster-2 15

Skalierbarkeit Skalierbarkeit bedeutet die Anpassung einer Software an wachsende Last: Interaktionsfrequenz Nutzerzahl Anpassung durch Hinzufügen von Resourcen. Resourcenbedarf zur Erhaltung der Servicequalität gute Skalierbarkeit: lineare Abhängigkeit zwischen Last und Resourcenbedarf mit geringem Faktor z.b. zehnfache Last -- doppelter Resourcenbedarf zwanzigfache Last -- vierfacher Resourcenbedarf. SE2-10-Entwurfsmuster-2 16

Skalierung Skalierung erfordert Hinzufügen von Ressourcen Rechner (meist Server), Speicher, Datenbanken statisch: Feste Vergrößerung der Konfiguration zur Aufnahme höherer Lasten dynamisch: Automatische Anpassung der Konfiguration an die augenblickliche Last SE2-10-Entwurfsmuster-2 17

Beispiel: Einfache statische Skalierung Webshop anfangs ein Server bei einsetzendem Erfolg 3 dedizierte Server Web- und Mailserver Applikationsserver Datenbankserver später weiterer Ausbau Duplizierter Applikationssserver Redundanter Datenbankserver SE2-10-Entwurfsmuster-2 18

Beispiel: Einfache dynamische Skalierung Bei weiter wachsemdem Erfolg: Hosting auf einer Serverfarm Lastabhängig werden Server hinzugefügt oder wieder entnommen (heute zumeist virtuelle Server) Architektur-Voraussetzungen: klare Schnittstellen lose Kopplung Laufzeit-konfigurierbar Laufzeitumgebung, die die Skalierung unterstützt SE2-10-Entwurfsmuster-2 19

Skalierbarkeit und Architektur Komponentenmodell Gliederung der Software in Komponenten "Genormte" Schnittstellenspezifikation "Genormte" Interaktion und Kollaboration Infrastruktur bietet Verteilung und Bindung (z.b. Namensdienst!) Persistenz Nachrichtenaustausch Sicherheit, Versionierung, weitere Dienste SE2-10-Entwurfsmuster-2SS 20

Komponententechnologie Komponentenmodelle umfassen Spezifikation der Komponenten Spezifikation der Dienste Spezifikation der Laufzeitumgebung / des Servers Beispiele JEE,.Net, (Corba) Skalierbarkeit: Duplizierung von Komponenten und Servern beliebig möglich. Frage der Server-Einstellung nicht der Anwendungssoftware! SE2-10-Entwurfsmuster-2 21

Andere skalierbare Architekturen ehe wir noch genauer in das JEE-Modell sehen: Skalierbarkeit gibt es auch in anderen Architekturen! Skalierung heißt lastabhängiges Hinzufügen von Ressourcen mit möglichst geringem Änderungsaufwand der Software. Peer2Peer ist der "Champion": Jeder zusätzliche Teilnehmer bringt automatisch neue Ressourcen ein. Nicht vergessen: Gute Skalierbarkeit bedeutet mäßigen Resourcenzuwachs pro Lastzuwachs SE2-10-Entwurfsmuster-2 22

JEE Enterprise Java Beans (EJBs) sind die Komponenten seit EJB 3 "POJOs" keine Erweiterung bestimmter KLassen erforderlich SessionBeans Geschäftslogik EntityBeans Modell MessageDrivenBeans asynchroner Aufruf Laufzeitumgebung EJB-Container oder "Java Application Server" Instanziierung, Verwaltung und Persistenz für EJBs zusätzliche "EJB-Services" wie Transaktionen, Namensdienst etc. Konfigurationsmöglichkeiten für Skalierung und Load Balancing SE2-10-Entwurfsmuster-2 23

JEE-Referenz-Architektur (c) schmiedecke 08 SE2-2-Java-Webapps 24

EJB-Services JMAPI Java Management API JNDI Java Name Directory Interface JTS Java Transaction Service JIDL Java Interface Definition Language JMS Java Message Service JRA Java Resource Adapter API JSA Java Security API SE2-10-Entwurfsmuster-2 25

Maßnahmen für die Skalierbarkeit Programmieren gegen Interfaces Interfaces reduzieren die Abhängigkeiten Erleichtern die Einführung perfomanterer Lösungen (Nur die betroffenen EJBs müssen neu deployed werden) Lose Kopplung durch Dependency Injection Reduziert die Kopplung stellt dennoch eine feste Beziehung zwischen zwei Objekten her Extra-lose Kopplung durch Name-Directory-Lookup Bei Bedarf wird ein Service über die Registry gefunden Service-Locator-Pattern Alle drei Techniken finden Sie im 2. CRUD-Modell 26

Skalierbarkeit ist nicht alles Skalierbarkeit ist nur eine der nichtfunktionalen Anforderungen. Umsetzung beispielhaft diskutiert Performance Sicherheit Verfügbarkeit Praktisch jede Anforderung muss bereits im Architekturentwurf berücksichtigt werden! SE2-10-Entwurfsmuster-2 27

Das war's an Modellarbeit und für dieses Jahr! Frohe Weihnachten, guten Rutsch und auf Wiedersehen 2011! SE2-10-Entwurfsmuster-2 28