14 Ereignisbasierte Systeme!
|
|
- Alke Kruse
- vor 6 Jahren
- Abrufe
Transkript
1 Klaus-Peter Löhr! 14 Ereignisbasierte Systeme! 14.1 Das Beobachter-Muster!!4! 14.2 Gruppenkommunikation!!10! 14.3 Ereignisdienste!!!20! 14.4 Event Routing!!!26!! Zusammenfassung!!!31!! WS 13/14 ALP 5 - Ereignisbasierte Systeme 1
2 Zur Erinnerung (2.6): Ereignisquelle benachrichtigt Interessenten über Ereignisse. Quelle meldet Ereignisse, kennt nicht die Interessenten. Interessent kennt die für ihn relevanten Ereignisse... und muss sich für deren Empfang registrieren. Interessent kann wieder Quelle anderer Ereignisse sein. In der Realität erheblich komplexere Varianten. WS 13/14 ALP 5 - Ereignisbasierte Systeme 2
3 Typische Anwendungsbereiche: Informationsdienste Börsenticker Verteilte Auktionen Überwachung technischer Einrichtungen: Produktionsanlagen Stromnetz Kommunikationsnetze (Achtung - Systeme wie RSS arbeiten anders: hier geht die Initiative zur Informationsbeschaffung vom Empfänger aus.) WS 13/14 ALP 5 - Ereignisbasierte Systeme 3
4 objektorientiert, sequentiell! 14.1 Das Beobachter-Muster! (observer pattern) WS 13/14 ALP 5 - Ereignisbasierte Systeme 4
5 Benachrichtigung (event notification) (Objektaufruf notify).. Observers/Beobachter Subjects/Informationsquellen register/anmelden unregister/abmelden (Objektaufrufe) WS 13/14 ALP 5 - Ereignisbasierte Systeme 5
6 Typische Anwendung - GUI-Programmierung:! class MyActionListener implements ActionListener {!...! textfield.addactionlistener(this);!!!...!!!!...! public void actionperformed(actionevent e) {... }! }!! WS 13/14 ALP 5 - Ereignisbasierte Systeme 6
7 Typische Anwendung - GUI-Programmierung:!ConcreteObserver!!!Observer! class MyActionListener implements ActionListener {!...! textfield.addactionlistener(this);!!!...!!!register!...! public void actionperformed(actionevent e) {... }! }!!Subject!notify!!!!( Listener, Event Handler for Callback )! WS 13/14 ALP 5 - Ereignisbasierte Systeme 7
8 Bemerkung: Hier gibt es verborgene Nichtsequentialität: ein unsichtbarer Thread bedient in einer Main Loop die Event Queue und ruft zu gegebener Zeit den Event Handler auf. Man spricht auch von Event-Driven Program. Achtung: es handelt sich nicht um ein verteiltes Programm: weder im Code noch in der Implementierung wird mit Nachrichten operiert. WS 13/14 ALP 5 - Ereignisbasierte Systeme 8
9 Verteilte Version des Beobachter-Musters: Die Benachrichtigung (event notification) erfolgt durch gepufferten Nachrichtenversand zwischen Prozessen. è ereignisbasiertes System WS 13/14 ALP 5 - Ereignisbasierte Systeme 9
10 14.2 Gruppenkommunikation! Benachrichtigung (event notification) über ein Ereignis durch einen Herausgeber (publisher) geht an mehrere Abonnenten (subscribers). Gruppenkommunikation: Konzentrierung auf drei Aspekte: Verwaltung der Abonnenten Nachrichten-Pufferung Dienstqualität WS 13/14 ALP 5 - Ereignisbasierte Systeme 10
11 Operationen für die Verwaltung der Abonnenten: anmelden abmelden Beobachter-Muster: register!unregister!!!!addlistener!removelistener! Benannte Gruppe: join!!leave Ereignis-Dienst: subscribe!unsubscribe!! WS 13/14 ALP 5 - Ereignisbasierte Systeme 11
12 Beispiel 1 für Gruppenkommunikation: UDP Multicast: Gruppenname: IP-Adresse im Bereich Verwaltung: multicastsocket.joingroup (ip) (Java)!!!multicastsocket.leaveGroup(ip)! Komunikation: multicastsocket.receive(datagram)!!!socket.send(datagramwithipandport)!!!nachricht geht an alle Stationen, auf denen ein entsprechendes joingroup gemacht wurde, und dort an den mit dem Port verbundenen Prozess. Offene Gruppe Sender muss nicht Mitglied sein WS 13/14 ALP 5 - Ereignisbasierte Systeme 12
13 Verteilte Implementierung: Lokalnetz-Hardware, IP Multicast und Internet Group Management Protocol (IGMP) Pufferung: bei den Teilnehmern - nur aktuelle Teilnehmer erhalten die Nachricht! (wie bei Instant Messaging ) Qualität: verlustbehaftet; kausal und total geordnet nur im Lokalnetz, sonst keine Ordnungsgarantien WS 13/14 ALP 5 - Ereignisbasierte Systeme 13
14 Beispiel 2 für Gruppenkommunikation: JGroups: Gruppenname: mnemonischer Name (für ein cluster ) Verwaltung: channel.connect("chatcluster") (Java)! channel.disconnect()! Komunikation: channel.setreceiver(receiver) für Callback!!mit receive(message msg){... event handling...}!!!channel.send(msg)!!!nachricht geht an alle Prozesse, die sich bei ChatCluster angemeldet haben. Geschlossene Gruppe Sender muss Mitglied sein. WS 13/14 ALP 5 - Ereignisbasierte Systeme 14
15 Verteilte Implementierung: reliable multicast - nichttrivialer verteilter Algorithmus, auf IP Multicast aufbauend Pufferung: minimal bei den Empfängern (Callback) - nur aktuelle Teilnehmer erhalten die Nachricht! (Instant Messaging) Qualität: verlustfrei; reihenfolgetreu und total geordnet! WS 13/14 ALP 5 - Ereignisbasierte Systeme 15
16 Beispiel 3 für Gruppenkommunikation: JMS (Java Message System) Gruppenname: mnemonischer Name für ein Thema (topic), an dem die Teilnehmer interessiert sind Verwaltung: topic = (Topic)jndiContext.lookup(topicName);!!subscriber =....createsubscriber(topic);!!publisher =....createpublisher (topic);!!topicconnection.start();!!topicconnection.close();!! Komunikation: subscriber.setmessagelistener(listener);!!!!!!! publisher.publish(message);!!für Callback!!Offene Gruppe.! WS 13/14 ALP 5 - Ereignisbasierte Systeme 16
17 Implementierung: zentraler Server J2EE Server (auch mehrere kooperierend) betreut mehrere Gruppen/Themen Pufferung: beim Server. Dauerhafte Abonnements (durable subscriptions): Abonnent richtet benanntes Abonnement ein und meldet sich ab. Nach erneuter Anmeldung kann er das Abonnement wieder nutzen. Zwischenzeitlich versendete Nachrichten gehen nicht verloren. ( S. 18) Qualität: verlustfrei, reihenfolgetreu; auch transaktional für mehrere Nachrichten. WS 13/14 ALP 5 - Ereignisbasierte Systeme 17
18 non-durable vs. durable subscriptions WS 13/14 ALP 5 - Ereignisbasierte Systeme 18
19 Anmerkungen: JMS ist ein typisches Beispiel für Message-Oriented Middleware: Sender/Empfänger kennen einander nicht: räumliche Entkoppelung Sender/Empfänger existieren unabhängig voneinander: zeitliche Entkoppelung Transaktionale Sicherungen Solche Systeme unterstützen auch einfache Nachrichten-Schlangen (missverständlich Point-to-Point-Kommunikation genannt); Operationen send/receive. Wer übernimmt die Initiative für die Nachrichtenauslieferung? Push mode: der Sender über einen Listener (kein Puffern) Pull mode: der Empfänger mittels receive-operation WS 13/14 ALP 5 - Ereignisbasierte Systeme 19
20 14.3 Ereignisdienste! (event services, publish/subscribe systems) Benachrichtigung mittels Gruppenkommunikation bedeutet: Gruppe ó Thema (topic, subject) Für publish/subscribe größere Flexibilität erforderlich, z.b. herausgeben abonnieren mit Filter Aktuelle Börsenkurse Kurs der XY-Aktie Pegelstand liegt bei 6,70 Pegel übersteigt 7,00 WS 13/14 ALP 5 - Ereignisbasierte Systeme 20
21 (vgl. 14.1, Bild S. 4) kündigen Ereignisdienst veröffentlichen abonnieren benachrichtigen Herausgeber Abonnenten Ereignisdienst praktiziert Filterung der Nachrichten WS 13/14 ALP 5 - Ereignisbasierte Systeme 21
22 Themenbasierte Filterung Einfache Themen: Ereignis-Dienst fungiert wie Verwalter mehrerer Gruppen (z.b. wie einfaches JMS, S. 16). Themen-Hierarchie: Abonnent für Thema X erhält alle Nachrichten zu X und zu allen Unterthemen von X. Vorteil: einfach zu realisieren Nachteil: geringe Flexibilität (Typbasierte Filterung: Typhierarchie Typsicherheit) WS 13/14 ALP 5 - Ereignisbasierte Systeme 22
23 Inhaltsbasierte Filterung Über Attribute von Ereignissen kann der Abonnent die relevanten Ereignisse charakterisieren, z.b. subscribe("nystockmarket", "Exxon<90 & Chevron<110")! subscribe("pegelelbe", "Pirna>800")! Vorteil: sehr flexibel Nachteil: aufwendiger zu realisieren Weitere Filtertechniken... (Ontologien, Ortsabhängigkeit, XML) WS 13/14 ALP 5 - Ereignisbasierte Systeme 23
24 ! Inhaltsbasierte Filterung wird bereits von JMS unterstützt: Ein Herausgeber für ein Thema alerts : TextMessage message = session.createtextmessage();! message.settext("beware of virus ");! message.setstringproperty("subject", "Virus");! publisher =....createpublisher (alerts);! publisher.publish(message);!! Ein Abonnent für das Thema alerts : String selector = "(Subject='Virus' OR Subject='Worm')"; subscriber = session.createsubscriber(alerts, selector); subscriber.setmessagelistener(new AlertListener);! Syntax von Selektoren: Teil der Syntax von SQL92 für bedingte Ausdrücke WS 13/14 ALP 5 - Ereignisbasierte Systeme 24
25 Weitere Systeme: CORBA Notification Service docs.oracle.com/cd/e13203_01/tuxedo/tux80/notify/evnt_api.htm IBM WebSphere MQ (früher MQSeries ) publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp? topic=%2fcom.ibm.mq.mqovervw.doc%2fmq50040_.htm Oracle Streams Advanced Queueing (AQ) docs.oracle.com/cd/e11882_01/server.112/e11013/toc.htm MS Notification Services technet.microsoft.com/en-us/library/ms170337(v=sql.90).aspx... WS 13/14 ALP 5 - Ereignisbasierte Systeme 25
26 14.4 Event Routing! Komplexe Ereignisdienste sind i.a. im Netz verteilt realisiert: Virtuelles Netz (overlay network) im realen Internet Wegfindung der Nachrichten: Event Routing Herausforderungen: zielgerichtete Verteilung der Nachrichten an die jeweiligen Abonnenten, ohne das gesamte Netz zu fluten. Änderungen im virtuellen Netz Änderungen im realen Netz (Mobilität!) WS 13/14 ALP 5 - Ereignisbasierte Systeme 26
27 Matching Event routing Event flooding Subscription flooding Rendezvous Filter-based Blind gossip Informed gossip Flooding Selective diffusion Gossiping Overlay infrastructures Broker overlay P2P structured overlay P2P unstructured overlay Network protocols TCP/IP IP Multicast SOAP b/g WS 13/14 ALP 5 - Ereignisbasierte Systeme 27
28 Mit Ereignissen fluten x>30 x=22 x=167 x<18 AND x>10 x=30 OR x>200 x>10 x>40 x<5 x<>30 x=30 Event routing WS 13/14 ALP 5 - Ereignisbasierte Systeme 28
29 x>30 IP x x<>30 IP y x<5 IP z x>40 IP w x>10 IP xyz x=22 Mit Abonnements fluten (falls Abonnements eher statisch) x>30 x=167 x<18 AND x>10 x=30 OR x>200 x>10 x>40 x<5 x<>30 x=30 Event routing WS 13/14 ALP 5 - Ereignisbasierte Systeme 29
30 Gefilterte Wegfindung a x>=30 OR (x<18 AND x>10) b x>=30 OR (x<18 AND x>10) 3 ANY 5 ANY ANY x>30 e ANY x=22 x=167 5 x>10 OR x<5 x<18 AND x>10 6 x>10 8 x<5 9 ANY 3 x>=30 OR (x<18 AND x>10) d ANY 9 x>10 OR x<5 f - x=30 OR x>200 x>40 x=30 x>10 7 x>10 5 ANY x<5 x<>30 WS 13/14 ALP 5 - Ereignisbasierte Systeme 30
31 Zusammenfassung! Ereignisbasierte Interaktion: mehrere Instanzen (Objekte, Prozesse,...) erhalten die gleiche Nachricht. Dem Nachrichten-Produzenten ist es i.d.r. egal, was die Empfänger mit den Nachrichten machen. Das Beobachter-Muster ist die elementare sequentielle Version der ereignisbasierten Interaktion. Gruppenkommunikation ist die verteilte Version, verteilt implementiert (Multicast) oder über zentralen Server. WS 13/14 ALP 5 - Ereignisbasierte Systeme 31
32 Ereignisdienst (event service, publish/subscribe service) verwendet zentralen Server (oder entsprechenden Verbund), insbesondere zur Filterung von Benachrichtigungen. Geschicktes Event Routing sorgt dafür, dass Nachrichten nur dorthin weitervermittelt werden, wo Abonnenten darauf warten. WS 13/14 ALP 5 - Ereignisbasierte Systeme 32
33 Quellen! Multicast: tldp.org/howto/multicast-howto.html download.java.net/jdk7/archive/b123/docs/api/java/net/ Jgroups: MulticastSocket.html JMS: docs.oracle.com/javaee/6/tutorial/doc/bncdq.html docs.oracle.com/javaee/1.3/jms/tutorial/1_3_1-fcs/ doc/jms_tutorialtoc.html A. Carzaniga et al.: A Routing Scheme for Content-Based Networking. Proc. IEEE INFOCOM G. Mühl: Publish/Subscribe-Systeme. Vorlesungsfolien A.M. Hinze, A. Buchmann: Principles and Applications of Distributed Event-Based Systems. IGI Global WS 13/14 ALP 5 - Ereignisbasierte Systeme 33
10.4 JMS - Java Message Service
10.4 JMS - Java Message Service ist Schnittstelle zu MOM-Implementierungen verschiedener Anbieter (z.b. IBM MQSeries) ist sehr liberal bezüglich der Semantik dieser Implementierungen unterstützt sowohl
MehrJMS Java Message Service
JMS Java Message Service TK3 WS02/03 Dipl.-Ing. Erwin Aitenbichler Abt. Telekooperation TU Darmstadt 1 JMS: Java Message Service Messaging Lose gekoppelte verteilte Kommunikation RMI: Eng gekoppelt Sender
MehrEvaluation of Java Messaging Middleware as a Platform for Software Agent Communication
Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication Frank Kargl Torsten Illmann Michael Weber Verteilte Systeme Universität Ulm {frank.kargl torsten.illmann weber} @informatik.uni-ulm.de
MehrJMS Java Message Service
JMS Java Message Service TK3 - WS03/04 Dipl.-Ing. Erwin Aitenbichler Abt. Telekooperation TU Darmstadt 1 JMS: Java Message Service Messaging Lose gekoppelte verteilte Kommunikation RMI: Eng gekoppelt Sender
Mehr10 Nachrichtenorientierte Middleware. vs10 1
10 Nachrichtenorientierte Middleware vs10 1 10.1 Nachrichten- und Ereignisdienste Motivation:? Defizite objektorientierter verteilter Systeme? Anderer Architekturstil sinnvoll für manche Anwendungen, z.b.
MehrStudienprojekt HP-MOM
Institute of Parallel and Distributed Systems () Universitätsstraße 38 D-70569 Stuttgart Studienprojekt HP-MOM High Performance Message Oriented Middleware 23. Januar 2013 Kurt Rothermel, Frank Dürr, Patrick
MehrMessage Oriented Middleware am Beispiel von XMLBlaster
Message Oriented Middleware am Beispiel von XMLBlaster Vortrag im Seminar XML und intelligente Systeme an der Universität Bielefeld WS 2005/2006 Vortragender: Frederic Siepmann fsiepman@techfak.uni bielefeld.de
MehrWeb Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke. 31.03.2003 J.M.Joller 1
Web Services XML, WSDL, SOAP und UDDI Einblicke und Ausblicke 31.03.2003 J.M.Joller 1 Inhalt Architekturen Main Stream.NET J2EE und Applikations-Server Sicht der Anbieter Java J2EE J2EE versus.net Web
MehrBusiness Process Management und Enterprise Service Bus
Business Process Management und Enterprise Service Bus Gegner oder doch eine gute Ergänzung? Author: Date: Markus Demolsky Soreco International 08. November 2010 Vortragender Warum über Integration nachdenken?
MehrEreignisbasierte Kommunikationsmodelle
2008 Gliederung Aufgabenstellung 1 Aufgabenstellung Aufgabe 2 Gliederung Aufgabenstellung Aufgabe 1 Aufgabenstellung Aufgabe 2 Aufgabe Aufgabe Entwicklung einer Komponente eines ereignisbasierten Kommunikationsmodelles
MehrKap. 6 Message-Oriented Middleware (MOM)
Kap. 6 Message-Oriented Middleware (MOM) 6.1Asynchrone Prozedur- bzw. Methodenaufrufe Lose Kopplung von Komponenten 6.2Queued Transactions Entkopplung von Client/Server-Transaktionen 6.3Publish/Subscribe-Techniken
MehrMulticasting. Weitere Definitionen
Multicasting Def. Mehrpunkt-Kommunikation: Gleichzeitiger Austausch von Nachrichten unter mehreren Kommunikationspartnern. Def. Multicast: Die Übermittlung einer Nachricht an mehrere Empfänger in einer
MehrKap. 6 Message-Oriented Middleware (MOM)
Kap. 6 Message-Oriented Middleware (MOM) G 6.1Asynchrone Prozedur- bzw. Methodenaufrufe Lose Kopplung von Komponenten G 6.2Queued Transactions Entkopplung von Client/Server-Transaktionen G 6.3Publish/Subscribe-Techniken
MehrObjektorientierte und Funktionale Programmierung SS 2014
Objektorientierte und Funktionale Programmierung SS 2014 6 Objektorientierte Entwurfsmuster 1 6 Objektorientierte Entwurfsmuster Lernziele Einige wichtige Entwurfsmuster kennen und verstehen Einsatzmöglichkeiten
MehrEvent Stream Processing & Complex Event Processing. Dirk Bade
Event Stream Processing & Complex Event Processing Dirk Bade Die Folien sind angelehnt an eine Präsentation der Orientation in Objects GmbH, 2009 Motivation Business Activity Monitoring Sammlung, Analyse
MehrHerausforderung Multicast IPTV
Track 3B Herausforderung Multicast IPTV Stefan Rüeger Leiter Technik, Studerus AG IPTV Agenda Multicast IGMP Konfiguration Netzwerkkomponenten Stolpersteine im Umgang mit IPTV Aktuelle Einsatz-Szenarien
MehrÜbung 1 mit C# 6.0 MATTHIAS RONCORONI
Übung 1 mit C# 6.0 MATTHIAS RONCORONI Inhalt 2 1. Überblick über C# 2. Lösung der Übung 1 3. Code 4. Demo C# allgemein 3 aktuell: C# 6.0 mit.net-framework 4.6: Multiparadigmatisch (Strukturiert, Objektorientiert,
MehrXMPP: Extensible Messaging and Presence Protocol
XMPP: Extensible Messaging and Presence Protocol (aka Jabber) 5. Dezember 2005 Einleitung Was ist XMPP? Architektur Allgemeines Kommunikation via XMPP: Streams, Stanzas Beispielanwendung
MehrDelegatesund Ereignisse
Delegatesund Ereignisse «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen Definition eines Ereignisses
MehrMultiuser Client/Server Systeme
Multiuser /Server Systeme Christoph Nießner Seminar: 3D im Web Universität Paderborn Wintersemester 02/03 Übersicht Was sind /Server Systeme Wie sehen Architekturen aus Verteilung der Anwendung Protokolle
MehrVS3 Slide 1. Verteilte Systeme. Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel
VS3 Slide 1 Verteilte Systeme Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel Inhaltsverzeichnis für die Vorlesung Zur Motivation: 4 Beispiele aus der Praxis Allgemeine Anforderungen an Verteilte
Mehr2 Kommunikationssysteme. vs2 1
2 Kommunikationssysteme vs2 Kommunikationssysteme bieten Kommunikationsdienste an, die das Senden und Empfangen von Nachrichten erlauben (sending & receiving messages) bestehen aus - Kommunikationsnetz
MehrJMS JAVA MESSAGE SERVICES. Entwicklung von Webanwendungen SS 07
JMS JAVA MESSAGE SERVICES Entwicklung von Webanwendungen SS 07 Marc Seeger Stephan Helten [ms155] [sh094] Agenda Teil 1: Marc Seeger [ms155] Einführung: Was ist Messaging Message Oriented Middleware [MOM]
MehrPull-Multicast for the HAMcast API
Vortrag Anwendung 2 Hochschule für Angewandte Wissenschaften Hamburg 01.12.2011 Agenda 1 2 Design and Implementation of a Generic Library for P2P Streaming [3] BiToS: Enhancing BitTorrent for Supporting
MehrEnterprise Service Bus (ESB) in einer SOA
Einleitung Enterprise Service Bus (ESB) in einer SOA Deutsche Oracle-Anwenderkonferenz (DOAG) 15.-16. Nov. 2006 Jan Krüger Oracle Deutschland GmbH, Hamburg Ein Enterprise Service Bus (ESB) ist die zentrale
MehrTaktische Kommunikation auf Basis flexibler und dynamischer Informationsnetze
Frank Hornbach, Client Technical Advisor, Geschäftsbereich Verteidigung frank.hornbach@de.ibm.com Taktische Kommunikation auf Basis flexibler und dynamischer Informationsnetze AFCEA-ZVEI Fachveranstaltung
MehrLoadbalancing und Clustering mit Tomcat 6
Loadbalancing und Clustering mit Tomcat 6 Java Forum Stuttgart 3. Juli 2008 Michael Heß ORDIX AG, Paderborn mhe@ordix.de www.ordix.de Agenda Zielsetzung des Vortrags Webserver Integration Loadbalancing
MehrPRODATIS CONSULTING AG. Folie 1
Folie 1 Führend im Gartner Magic Quadranten für verteilte, interagierende SOA Projekte Oracle ist weltweit auf Rang 1 auf dem Markt der Enterprise Service Bus Suiten (ESB) für SOA Software 2010 26,3 %
Mehr11. Komponenten Grundlagen der Programmierung 1 (Java)
11. Komponenten Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 10. Januar 2006 Einordnung im Kontext der Vorlesung
MehrÜberblick. Zeit Motivation Network Time Protocol (NTP) Logische Uhren. c td VS (SS16) Zeit 9 1
Überblick Zeit Motivation Network Time Protocol (NTP) Logische Uhren c td VS (SS16) Zeit 9 1 Motivation Zeit als Mittel zur Reihenfolgebestimmung (Beispiele) Erkennung von Modifikationen an Dateien (z.
MehrOracle Advanced Queuing AQ
Oracle Advanced Queuing AQ 13.09.2012 Referenten: Claus Cullmann Andreas Steinel Inhalt Motivation Message Systeme Eigenschaften, Beispiele Oracle AQ Terminologie AQ Beispiel pure SQL Beispiel Java-Anwendung
MehrAnalyse und Modellierung von Informationssystemen
Analyse und Modellierung von Informationssystemen Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2014/2015 1 / 21 Beobachter-Muster 2 / 21 Das Beobachter-Muster Das Beobachter-Muster (observer,
MehrKapitel 7 Message-oriented Middleware (MOM)
Kapitel 7 Message-oriented Middleware (MOM) Inhalt: Transaktionale Warteschlangen Message Queuing Stratifizierte Transaktionen Message Brokering Zusammenfassung Transaktionale Warteschlangen Einsatz von
MehrCOMMON OBJECT REQUEST BROKER ARCHITECTURE. Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg
COMMON OBJECT REQUEST BROKER ARCHITECTURE Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg Gliederung Motivation Was ist CORBA? Object Management Architecture (OMA ) Interface Definition Language
MehrVortrag zum Fortsetzungantrag
1 / 18 Vortrag zum Fortsetzungantrag Universität Rostock Fakultät für Informatik und Elektrotechnik Institut für Informatik Lehrstuhl für Informations- und Kommunikationsdienste 24.06.2008 2 / 18 Inhalt
MehrErste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung. September 2013
GTUG Java Arbeitskreis Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung September 2013 Jürgen Depping CommitWork GmbH Seite 1 Info@CommitWork.de www.commitwork.de Agenda Was ist OmnivoBase?
MehrSoftware-Entwurfsmuster (weitere) A01 OOP. Software-Entwurfsmuster (weitere)
2014-01-08 Software-Entwurfsmuster (weitere) 1 185.A01 OOP Software-Entwurfsmuster (weitere) 2014-01-08 Software-Entwurfsmuster (weitere) 2 OOP Vererbung versus Delegation class A { public void x() { z();
MehrASPECT-ORIENTED DESIGN PATTERNS
ASPECT-ORIENTED DESIGN PATTERNS 1 Gliederung I. Entwurfsmuster Aufbau und Beschreibung II. Probleme objektorientierter Entwurfsmuster III. Entwicklung eines aspektorientierten Musters 2 Abschnitt I: Entwurfsmuster
MehrAutomatische Verteilung in Pangaea. André Spiegel Freie Universität Berlin
Automatische Verteilung in Pangaea André Spiegel Freie Universität Berlin Einführung Pangaea ist ein System, das zentralisierte Java-Programme automatisch verteilen kann basierend auf statischer Quelltextanalyse
MehrEnterprise Middleware mit ActiveMQ
ITMAGAZINE Enterprise Middleware mit ActiveMQ 17. August 2007 - Nachrichtenorientierte Middleware ist die Basistechnologie moderner Enterprise-Architekturen, die die Implementierung von Enterprise Integration
MehrKapitel 9 Message-oriented Middleware (MOM)
Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Kapitel 9 Message-oriented Middleware (MOM) Inhalt: Warteschlangen in
MehrGeoEvent Processor und Feeds
2013 Europe, Middle East, and Africa User Conference October 23-25 Munich, Germany GeoEvent Processor und Feeds Dr. Peter Saiger-Bonnas Raum-Zeitliche Daten Gruppierung nach Zeit Gruppierung nach Attributen
MehrEnterprise Application Integration. 8. Nachrichten-orientierte Middleware
Enterprise Application Integration 8. Nachrichten-orientierte Middleware Kommunikation zwischen IS in Unternehmen eng Remote Procedure Calls/ Remote Method Invocation, z.b. bei: CORBA EJB DCOM+ Web Services
MehrKapitel 8: Nachrichtenbasierte Kommunikation mit JMS. Middleware in Java vieweg 2005 Steffen Heinzl, Markus Mathes
Kapitel 8: Nachrichtenbasierte Kommunikation mit JMS Middleware und nachrichtenorientierte Middleware Eine Software heißt Middleware genau dann, wenn sie die Entwicklung und den Betrieb eines verteilten
MehrObjektorientierteund FunktionaleProgrammierung
Objektorientierte und Funktionale Programmierung SS 2014 6 Objektorientierte Entwurfsmuster 1 6 Objektorientierte Entwurfsmuster Lernziele Einige wichtige Entwurfsmuster kennen und verstehen Einsatzmöglichkeiten
MehrEnterprise JavaBeans Überblick
Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.
MehrWebSphere Application Server Installation
WebSphere Application Server Installation und Administration Seminarunterlage Version: 3.04 Copyright Version 3.04 vom 16. Mai 2013 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte
MehrSoftwarepraktikum Sommersemester 2006
Softwarepraktikum Sommersemester 2006 Netzwerkprogrammierung in Java Ralf Wienzek wienzek@informatik.rwth-aachen.de Ulrich Loup loup@i4.informatik.rwth-aachen.de Grundlagen Netzwerkprogrammierung TCP/IP
Mehr5 Verteilte Algorithmen. vs5 1
5 Verteilte Algorithmen vs5 1 Charakterisierung eines verteilten Systems? Prozesse als Systemkomponenten: Spezifikation eines Prozesses (Vgl. Spezifikation eines ADT) syntaktisch: z.b. Ports oder Parameter
MehrVS4 Slide 1. Verteilte Systeme. Vorlesung 4 vom 29.04.2004 Dr. Sebastian Iwanowski FH Wedel
VS4 Slide 1 Verteilte Systeme Vorlesung 4 vom 29.04.2004 Dr. Sebastian Iwanowski FH Wedel Inhaltsverzeichnis für die Vorlesung Zur Motivation: 4 Beispiele aus der Praxis Allgemeine Anforderungen an Verteilte
MehrEntwurfsmuster und Frameworks Singleton
Entwurfsmuster und Frameworks Singleton Oliver Haase Oliver Haase Emfra Singleton 1/20 Beschreibung I Klassifikation: objektbasiertes Erzeugungsmuster Zweck: sicherstellen, dass eine Klasse nur genau einmal
MehrDynamische domänenübergreifende Gruppenkommunikation in hybriden Multicast-Netzwerken
Dynamische domänenübergreifende Gruppenkommunikation in hybriden Multicast-Netzwerken Sebastian Wölke Sebastian.Woelke@haw-hamburg.de University of Applied Sciences Hamburg Oktober 14, 2014 Hochschule
MehrBrowserbasiertes, kollaboratives Whiteboard
WS 2011/12 Bachelorarbeit Browserbasiertes, kollaboratives Whiteboard Sebastian Dorn 1 von 21 Inhalt 1. Motivation 2. Analyse 3. Design 4. Evaluation 5. Fazit Inhalt 2 von 21 Motivation Zusammenarbeit
MehrOSS/J als Basis für Enterprise Application Integration
OSS/J als Basis für Enterprise Application Integration Geschäftsprozessgesteuerte EAI im Telekommunikationsbereich r A business of PwC Agenda OSS-Architekturen als Integrationsherausforderung OSS/J als
Mehr7.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi) (http://java.sun.com/j2se/1.3/docs/guide/rmi/spec/rmitoc.
7.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi) (http://java.sun.com/j2se/1.3/docs/guide/rmi/spec/rmitoc.html) bietet leider nur begrenzte Verteilungsabstraktion Unterstützung
MehrAlexander Schill Thomas Springer. Verteilte Systeme. Grundlagen und Basistechnologien. 2. Auflage. 4y Springer Vieweg
Alexander Schill Thomas Springer Verteilte Systeme Grundlagen und Basistechnologien 2. Auflage 4y Springer Vieweg Inhaltsverzeichnis 1 Einleitung 1.1 Anwendungsbeispiel 3 1.2 Zielsetzung Verteilter Systeme
MehrSoftwaretechnik. Inhaltsverzeichnis. M. Jakob. 15. März Grundlagen der Projektorganisation
M. Jakob Gymnasium Pegnitz 15. März 2016 Inhaltsverzeichnis Grundlagen der Projektorganisation Allgemeines Adaptermuster model-view-controller-muster Praktische Softwareentwicklung Profi GUI für Graphen
MehrSoftwaretechnik WS 16/17. Übungsblatt 01
Softwaretechnik WS 16/17 Übungsblatt 01 Was ist eine Klasse? Definition der Object Management Group: A class describes a set of objects that share the same specifications of features, constraints, and
MehrHaben Sie schon einmal aus einem ScreenCobol Requestor ein Java Programm aufgerufen?
Haben Sie schon einmal aus einem ScreenCobol Requestor ein Java Programm aufgerufen? Januar 2012 CommitWork GmbH Seite 1 Info@CommitWork.de www.commitwork.de Motivation Modernisierung eines Systems mit
MehrIPTV. Alexander Alexandrov Alexander Alexandrov
IPTV Alexander Alexandrov 1 Übersicht Einführung Multicast IPTV Architektur Protokolle Peer 2 Peer IPTV Architektur Protokolle Zusammenfassung 2 Einführung Definition: IPTV (Internet Protocol Television)
MehrLightweight Java in der Automatisierungstechnik
Lightweight Java in der Automatisierungstechnik Erfahrungen aus dem Anlagenbau Dr. Markus Eiglsperger eig@zuehlke.com Business Driver im Anlagenbau Kosten Modularisierung Vernetzung Agilität Paradigmenwechsel
MehrSeminararbeit Embedded Systems - Discovery Mechanismus für sdds. Kevin Sapper
Seminararbeit Embedded Systems - Discovery Mechanismus für sdds Kevin Sapper Seminararbeit Embedded Systems - Discovery Mechanismus für sdds Kevin Sapper Table of Contents... v 1. Einführung... 1 2. Grundlagen...
MehrVerteilte Systeme - Java Networking (Sockets) -
Verteilte Systeme - Java Networking (Sockets) - Prof. Dr. Michael Cebulla 30. Oktober 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 36 M. Cebulla Verteilte Systeme Gliederung Grundlagen TCP/IP
MehrEinführung. Internet vs. WWW
Einführung Bernhard Plattner 1-1 Internet vs. WWW "the Internet is the entirety of all computers which are interconnected (using various physical networking technologies) and employ the Internet protocol
MehrFunktionale und Objekt-Orientierte Programmierkonzepte
Funktionale und Objekt-Orientierte Programmierkonzepte Prof. Marc Fischlin, Wintersemester 15/16 Kapitel 17: GUI, Threads und verschachtelte Klassen 13. Oktober 2010 Dr.Marc Fischlin Kryptosicherheit 1
MehrRSS Push Verfahren. Hongliang Jiang, Roland Höpfner Seminar Moderne Webtechnologien AG-NBI. 18. November 2009
RSS Push Verfahren Hongliang Jiang, Roland Höpfner Seminar Moderne Webtechnologien AG-NBI 18. November 2009 1 Übersicht RSSFeeds Polling Push RSSCloud PubSubHubBub Vergleich Quellen 2 Feeds FU-Berlin Institut
MehrEinführung in die Informatik II
Einführung in die Informatik II SS 2012 6 Objektorientierte Entwurfsmuster Wissensbassierte Systeme / Wissensmanagement Einführung in die Informatik II 1 Prüfungstermine EI II im Sommersemester 2012 Klausurtermine
MehrClient - Server Architektur
Client - Server Architektur The Client-Server Model Literatur: R. Brause Silberschatz et al. SS2001 Prof. H. D. Clausen - unisal 1 Prozess-Kommunikation Kommunikation zwischen Prozessen Prozesse benutzen
MehrMainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4
UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 WebSphere Application Server Teil 4 Leistungsverhalten el0100 copyright W. G. Spruth,
MehrCORBA. Systemprogrammierung WS 2006-2007
CORBA Systemprogrammierung WS 2006-2007 Teilnehmer: Bahareh Akherattalab Babak Akherattalab Inhaltsverzeichnis: Verteilte Systeme Vergleich zwischen lokale und verteilte Systeme Verteilte Anwendungen CORBA
MehrKonzeption und Implementierung eines Datenbank-Agenten für die Bereitstellung von Daten aus dem Verkehr
Konzeption und Implementierung eines Datenbank-Agenten für die Bereitstellung von Daten aus dem Verkehr Andreas Walter, Universität Karlsruhe Studienarbeit am IPD Seite 1 Szenario 2. Anfrage an OVID-Netz
MehrInstitut für Programmierung und Reaktive Systeme. GUIs mit Swing. Markus Reschke
GUIs mit Swing Markus Reschke 28.08.2014 Beispiel: Ein einfaches GUI-Programm Siehe Painter.java Markus Reschke GUIs mit Swing 2 GUI Frameworks in Java AWT war das erste GUI-Framework, welches mit Java
MehrG JINI G.2 G.4. 1 Überblick. 1.1 Programmiermodell. 1.1 Programmiermodell (2) Diensteplattform für Java. Hintergrund. JINI Dienst.
1 Überblick Diensteplattform für Java von Sun Microsystems G JINI Programmiermodell für Dienste Infrastruktur Unterstützungsdienste Hintergrund Nomadic computing mobile Geräte dynamische Dienstnutzung
MehrProgrammierkurs Java
Programmierkurs Java Abstrakte Klassen und Methoden & Interfaces Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Vererbungshierarchie
MehrInteraktionsdiagramme in UML
Interaktionsdiagramme in UML Interaktionsdiagramm ist ein Oberbegriff für eine Reihe von Diagrammen, die das Verhalten eines objektorientierten Systems durch Objektinteraktionen beschreiben Ein Sequenzdiagramm
MehrWeb Services. Web Services in the News. Vision: Web of Services. Learning for Results. DECUS Symposium 2002, Vortrag 1K07,
Web Services Vision: Web of Services Applikationen und Services Ralf Günther Compaq Computer GmbH, Köln Ralf.Guenther@compaq.com DECUS Symposium 2002, Vortrag 1K07, 16.04.2002 Web Services in the News
MehrVisualisierung paralleler bzw. verteilter Programme
Seminar Visualisierung in Informatik und Naturwissenschaften im SS 1999 Visualisierung paralleler bzw. verteilter Programme Holger Dewes Gliederung Zum Begriff Motivation PARADE Beispiel 1: Thread basierte
MehrSoftwaretechnik. M. Jakob. 15. März Gymnasium Pegnitz
Softwaretechnik M. Jakob Gymnasium Pegnitz 15. März 2016 Inhaltsverzeichnis 1 Grundlagen der Projektorganisation 2 Entwurfsmuster Allgemeines Adaptermuster Kompositum Beobachtermuster model-view-controller-muster
MehrDr. Monika Meiler. Inhalt
Inhalt 15 Parallele Programmierung... 15-2 15.1 Die Klasse java.lang.thread... 15-2 15.2 Beispiel 0-1-Printer als Thread... 15-3 15.3 Das Interface java.lang.runnable... 15-4 15.4 Beispiel 0-1-Printer
MehrLösen Sie (fast) alle ihre Probleme mit Oracle Advanced Queuing. Performance Lastverteilung
Lösen Sie (fast) alle ihre Probleme mit Oracle Advanced Queuing Matthias Schulz Schulz IT Services GmbH Nürnberg Schlüsselworte Oracle Datenbank; Oracle Advanced Queuing; AQ; Messaging; IT-Probleme; Lösungen;
MehrSoftware Engineering. 10. Entwurfsmuster II. Franz-Josef Elmer, Universität Basel, HS 2015
Software Engineering 10. Entwurfsmuster II Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: 10. Entwurfsmuster II 2 Die Entwurfsmuster der Gang of Four Die 23 GoF Pattern sind in 3 Gruppen
MehrAufgabe 2.1: Lamports Uhren
Aufgabe 2.1: Lamports Uhren Die Relation a ereignet sich kausal vor b wird kurz als a b notiert. Von zwei Ereignissen a und b sind logische Zeitstempel nach Lamport, C(a) und C(b), bekannt, und es gilt
MehrEnterprise Application Integration Erfahrungen aus der Praxis
Enterprise Application Integration Erfahrungen aus der Praxis Teil 3: Fallstudien EDS und Vitria Tutorial NODs 2002, Wolfgang Keller and Generali 2001, 2002, all rights reserved 1 Überblick EDS ein selbstgebautes
MehrHochschule für Angewandte Wissenschaften München Fakultät Informatik und Mathematik
Hochschule für Angewandte Wissenschaften München Fakultät Informatik und Mathematik Verteilte Systeme (Masterstudiengänge) Wintersemester 2017/2018 München, September 2017 Prof. Dr. Peter Mandl, LBA Benjamin
MehrExkurs: ANONYME KLASSEN. Techniken der Programmentwicklung Prof. Dr. Wolfgang Schramm
Exkurs: ANONYME KLASSEN Techniken der Programmentwicklung Prof. Dr. Wolfgang Schramm Anonyme Klassen Eigenschaften 1 Häufigste Anwendung lokaler Klassen: anonyme Definition. Klasse erhält keinen eigenen
Mehr3 Konfiguration OfficeMaster 3.10 SNMP
3.10 SNMP Mit OfficeMaster 4.1 wird das Simple Network Management Protocol (SNMP) unterstützt. Dieses Netzwerkprotokoll dient der zentralen Überwachung von Netzwerkelementen. Um SNMP auf dem Ferrari Messaging
MehrJabber. Florian Holzhauer. Proseminar Uni Ulm, 27. April 2005. <page="1" max="22"/>
Jabber Florian Holzhauer Proseminar Uni Ulm, 27. April 2005 Idee, Geschichte Nachrichtentechnik Ausblick, Zukunft Gründe / Intention Grosse
MehrMulticast Routing in Ad Hoc Netzen
Multicast Routing in Ad Hoc Netzen KM-/VS-Seminar Wintersemester 2002/2003 Betreuer: Oliver Wellnitz 1 Gliederung Einleitung Was sind Ad Hoc Netzwerke Herausforderungen Anwendungsgebiete Multicast Routing
MehrVerteilte Systeme. Überblick. Architekturelemente: Kommunikationsparadigmen. Architekturelemente: Kommunikationsteilnehmer
Verteilte Systeme Jürgen Kleinöder Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme) www4.cs.fau.de Sommersemester 2013 http://www4.cs.fau.de/lehre/ss13/v_vs
MehrUniversität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich WS 02/03 Warum muss ein Objekt wissen, zu welcher Klasse es gehört? Damit die Klassenzugehörigkeit
MehrBetriebssysteme Teil 11: Interprozess-Kommunikation
Betriebssysteme Teil 11: Interprozess-Kommunikation 19.12.15 1 Übersicht Grundbegriffe Shared Memory Pipelines Messages Ports Sockets 2 Grundbegriffe Interprocess-Kommunikation = Austausch von Daten über
MehrAlternative Architekturkonzepte
Alternative Architekturkonzepte Motivation: Suche nach einer Gesamtstruktur meistens: dominante nichtfunktionale Eigenschaften legen Architektur fest Antrieb: Architekturziel Ziel: globale Betrachtung
Mehrinews: XML in der Praxis Konvertierung von Objekten nach XML und zurück Dr. St. Seefeld / INGTES AG
inews: XML in der Praxis Konvertierung von Objekten nach XML und zurück Dr. St. Seefeld / INGTES AG Objekte und XML Bei der Arbeit mit objektorientierten Programmiersprachen und XML kommt schnell der Wunsch
MehrRepetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen
MehrGraphische Benutzungsoberflächen mit Java. Einführung in NetBeans
Graphische Benutzungsoberflächen mit Java Einführung in NetBeans Graphische Benutzungsoberflächen! Interaktion mit dem Programm! Datenein- und ausgabe! Rückmeldungen über Verarbeitung der Daten! Visualisierung
MehrVerteilte Systeme. Organisatorisches. Secure Identity Research Group
Verteilte Systeme Organisatorisches 1 Termine 13 Vorlesungen: 12.4. - 5.7.2011, Di, 8:30-10:00 10 Übungstermine in voraussichtlich 2 Gruppen: Fr, 8:30-10:00 N.N. (voraussichtlich Do 10-12) Die Übungstermine
MehrEinsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server
Einsatz von Applikationsservern Untersucht am Beispiel des Sybase Enterprise Application Server Architektur von Datenbanksystemen Client / Server Modell (2 Schichten Modell) Benutzerschnittstelle Präsentationslogik
MehrKlausur zur Vorlesung Einführung in Verteilte Systeme WS 05/06 Prof. Dr. Odej Kao 3. Februar 2006
Klausur zur Vorlesung Einführung in Verteilte Systeme WS 05/06 Prof. Dr. Odej Kao 3. Februar 2006 Aufkleber Name: Vorname: Matrikel: Studiengang: inkl. DPO4, B/M, Schwerp., Schreiben Sie zunächst Ihren
Mehr