Blockseminar Großrechneraspekte Messaging Systems/ MQSeries (Grundlagen) Steffen Goldau.

Slides:



Advertisements
Ähnliche Präsentationen
Be.as WEB Technologie
Advertisements

E-Commerce Shop System
Systemverwaltung wie es Ihnen gefällt.
PC-Cluster.
SOAP Simple Object Access Protocol
2 Kommunikationssysteme bieten Kommunikationsdienste an, die das Senden und Empfangen von Nachrichten erlauben (sending & receiving messages) bestehen.
Datenbankzugriff im WWW (Kommerzielle Systeme)
Netzwerke im Dialogmarketing
Client-Server-Architekturen
Kommunikation in verteilten Systemen (Middleware)
7 Verteilungsabstraktion
XML in Client-Server und GRID Architektur
JAVA RMI.
Introducing the .NET Framework
LINUX&NT/ Konkurrenz &Kooperation Dürrenweid Professur systeme Betriebs- CheOpS 1 LINUX & Windows NT - Konkurrenz & Kooperation Historie Konfiguration.
Rechnernetze und verteilte Systeme (BSRvS II)
ISDN - Karten © by Holger °Shorty° Brock ®™
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Netzwerke Peer-to-Peer-Netz Client-Server Alleinstehende Server
Entwicklung verteilter eingebetteter Systeme - Einführung
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 4 Folie 2 Message Passing mittels Sockets (1) s.a.
Web Services Die Zukunft netzbasierter Applikationen iternum GmbH Alexanderstraße Frankfurt/Main
Referent: Kiron Mirdha Betreuer: Rene Hilden Juli 2012
Vorteile eines lokalen Netzwerks?
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
PSI - Überblick und Szenarien
Xenario IES Information Enterprise Server. Xenario Information Enterprise Server (IES) Die neue Architektur des Sitepark Information Enterprise Servers.
Durchsuchen, Suchen, Abonnieren Fotos, Musik, Media Informations- management VisualierungKlarheit.
Tobias Kluge: FAME Middleware / Karlsruhe / The FAME project – Middleware.
Grundlagen: Client-Server-Modell
Seminar Internet Technologien
Portabilität Seminar aus Softwareentwicklung: Programmierstil Christine Schiestl WS 02 / 03.
Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit.
Beschreiben Sie das Szenario wenn ein ORB einen Server aktiviert und eine Objektimplementation aufruft. Activate Server impl_is_ready Activate Object (GetID.
Management- und Web Services- Architekturen
Objectives Verstehen was unterDelegate verstanden wird
Rechnersysteme: Halbzeit Marcel Waldvogel. Marcel Waldvogel, IBM Zurich Research Laboratory, Universität Konstanz, , 2 Daten und Information.
Interprozess- kommunikation (IPC)
Benutzerumgebung auf der PC Seite Motivation Benutzerumgebung unter Windows Benutzerumgebung unter Linux.
Real World Windows Azure Die Cloud richtig nutzen.
Dr. Alois Schütte Definition Middlerware
Grundlagen, Prinzipien und Aufgaben eines Betriebssystems
VPN – Virtual Private Network
Linux oder GNU/Linux WS 2013/2014.
->Prinzip ->Systeme ->Peer – to – Peer
Vortrag - Diplomarbeiten (HS I)
SNMP – Simple Network Management Protocol
IT2 – WS 2005/20061Nov 14, 2005 Visibility  public: Sichtbar in allen Paketen  protected: Sichtbar innerhalb des Pakets und in den Unterklassen  (default,
Middleware in Java vieweg 2005 © Steffen Heinzl, Markus Mathes Kapitel 1: Architektur verteilter Systeme.
Hier wird Wissen Wirklichkeit Organic Computing – Teil 3c, Folie 1 - Prof. Dr. Uwe Brinkschulte Middleware:in verschiedenen Kontexten gebrauchter Begriff,
J2EE-Motivation(I) Anforderungen an heutige Software u.a.:
Seminar Großrechneraspekte Messaging Systeme MQSeries Doreen Baum.
EJB Architektur für große Web - Applikationen Gerald Weber
Web Services Spezielle Methoden der SWT Liste V – WS 2008/2009 Christian Boryczewski.
© 2003 Marc Dörflinger Spontane Vernetzung - Salutation 9. Jänner 2004 Spontane Vernetzung Salutation Marc Dörflinger.
Dokumentname Folie 1 Das Virtuelle Labor des DLR – eine e-science Plattform für Wissenschaft und Industrie Jochen Wauer, DLR.
ORB – Konzepte Ist – Analyse der betrieblichen Notwendigkeiten, Anforderungsableitung an moderne Lösungskonzepte, alternative ORB – Konzepte mit Zukunft,
Lisa Huber DHBW Mannheim
Cloud Entwicklung: Web Services
1 Konica Minolta IT Solutions Prinzip Partnerschaft MANAGED MONITORING ÜBERWACHJUNG DER SERVERINFRASTRUKTUR UND ANWENDUNGEN DIREKT AUS DER CLOUD.
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Rechen- und Kommunikationszentrum (RZ) Strukturierte Datensammlung in verteilten Systemen für den DHCP-Service Tim Becker Seminararbeit / /
Multiprocessing mit OpenMPI Marius Albath. Vorlesung Betriebssysteme, Was ist OpenMPI Was ist OpenMPI OpenMPI Standard Setup OpenMPI Standard.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Einflußreiche Systeme Dr. Wolfgang Wörndl.
Webservices SOAP und REST Nicole Fronhofs 1. Betreuer: Prof. Dr. Volker Sander 2. Betreuer: B. Sc. Sebastian Olscher.
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
2 Kommunikationssysteme
Datenbanken online sowie offline verfügbar machen
 Präsentation transkript:

Blockseminar Großrechneraspekte Messaging Systems/ MQSeries (Grundlagen) Steffen Goldau

1.Einführung 2.Messaging und Queuing 3.Messages 4.Queue-Manager 5.Message-Queues 6.Events 7.Zusammenfassung

1.1.Motivation Middleware ermöglicht verteilten An- wendungen miteinander zu kommunizieren „verteilt“ : z.B. Mainframes oder Cluster.... Netzwerk zunächst erst einmal beliebig

1.1.Motivation Hauptkomponenten von MQSeries: NETWORK Applikation MQSeries Applikation MQSeries MQI

1.1.Motivation (HIGHSPEED) NETWORK PC/Workstation Comm. SW Net.Interface HW PC/Workstation Comm. SW Net.Interface HW Cluster Middleware (Single System Image) Serial Programming Environment Parallel Programming Environment Serial ApplicationsParallel Applications

1.2.Middleware "Off-the-shelf connectivity software that supports distributed processing at runtime and it is used BY DEVELOPERS to build distributed software." MQSeries ist ein proprietäres Middlewareprogramm von IBM

1.2.Middleware Host: IBM MVS/ESA- Server and Client enabled Tandem NonStop Kernel- Server IBM VSE/ESA- Server Workstation: IBM AIX- Server and Client NCR (AT&T GIS) UNIX- Server and Client Siemens Nixdorf SINIX- Server and Client Hewlett Packard HP-UX- Server and Client SunSolaris and SunOS- Server and Client Digital Unix- Client - available as SupportPac Linux Client - available as SupportPac

1.2.Middleware Desktop: Windows Server and Client Microsoft Windows (MQSeries V Bit) Microsoft Windows (MQSeries V Bit) Windows 95 (32- Bit)- Client SCO Unixware- Server SCO Unix- Server SCO Unix (L2)- Client DOS Client- available as SupportPac MacOS (OEM)- Client

1.2.Middleware MQSeries ermöglicht die Kommunikation auf verschiedenen Abstraktionsebenen: OS Subsystems Kommunikations- Protokolle Prozessoren OS Subsystems Kommunikations- Protokolle Prozessoren WINTELSun/Solaris MQSeries = Cross- Network- Communication

1.3.MQSeries-Grundlagen und Charakteristika Message- Queuing ist eine Methode der Programm-zu-Programm-Kommunikation VERBINDUNGSLOSES Senden und Empfangen von Nachrichten wird ermöglicht Nachrichten werden hinterlegt und abgefragt mit Hilfe sogenannter Message- Queues (über MQSeries-API-Calls MQI)

1.3.MQSeries-Grundlagen und Charakteristika der Queue-Manager ist das Run-Time- Programm von MQSeries (zuständig für Verwaltungs-aufgaben der Queues) ein Queue-Manager arbeitet objektorientiert MQSeries ermöglicht: - asynchrone Kommunikation - verbindungslose Kommunikation - parallele Kommunikation

1.4.Anwendungsgebiete Workflow-Management: Lotus Notes Integration prinzipiell jeglicher IT- Systeme, insbesondere aber: - Finanzen - Herstellung - Handel & Vertrieb - Gesundheitsfürsorge - Reise- & Transportwesen

1.5.Alternativen innerhalb des Mainframebereichs gibt‘s keine außerhalb (z.B.Cluster): - DCOM (distributed component oriented model) von Microsoft - Programmiersprachen – spezifisch: RMI (Java) MPI/PVM (C,C++) HPF (Fortran)......

1.5.Alternativen alternative Prinzipien zum Message- Queuing: RPC(remote procedure call) MOM (message oriented middleware) ORB (object request broker)

2. Messaging und Queuing 2.1.Speicherkommunikation vs Nachrichtenkommunikation Speicherkommunikation: Global Memory CPU Lok.Mem. CPU Lok. Mem.

2.1.Speicherkommunikation vs Nachrichtenkommunikation Nachrichtenkommunikation: NETWORK CPU Lok.Mem. CPU Lok.Mem.

2.2.Paketkommunikation vs Kanalkommunikation Paket:z.B.:Bussysteme, internes Internet Kanal:z.B.:Telephon in der Realität treten nat. auch Mischformen auf

2.3.Grundlegende Prinzipien MQSeries:MOM, paketorientiert Messaging:Nachrichtenobjekte werden versendet und empfangen Queuing:Postfach, Synchronisation überflüssig Queue:Datenstruktur, die von einem Queuemanager verwaltet wird und in der Nachrichten gespeichert werden können

2.3.Grundlegende Prinzipien eine Anwendung nutzt zum Senden und Empfangen einer Nachricht MQI-Calls der Programmiere kümmert sich nicht um Zielapplikation sondern nur um Zielqueue MQSeries ermöglicht sowohl synchrones als auch asynchrones messaging

2.3.Grundlegende Prinzipien durch das MQI ist MQSeries in vielen Programmiersprachen und Plattformen nutzbar MQSeries verwirklicht eine Client-/Server- Struktur Programme kommunizieren ausschließlich über Queues und deren Managern innerhalb von MQSeries ist eine direkte Punkt- zu-Punkt-Kommunikation unmöglich

2.3.Grundlegende Prinzipien Applikation A Applikation B Queue- Manager Queue- Manager AQ(A) EQ(A) AQ(B) EQ(B) MQI

2.3.Grundlegende Prinzipien Applikation A Applikation B Queuemanager AQ(A)=EQ(B) EQ(A)=AQ(B) MQI

3.Messages Messages bestehen prinzipiell aus zwei Teilen: - Daten (ab Version MQSeries 5 bis zu 100MB) - Header (MessageID, Steuerattribute,...)

3.1.Segmentierung Messages können (automatisch) zerteilt werden, um Ressourcen (z.B. Puffergröße der Zielapplikation) besser nutzen zu können der Empfänger kann dann entweder die ganze Nachricht oder bestimmte, in interessierende, Segmente abfragen die Segmente sind prinzipiell eigenständige kleinere Nachrichten

3.2.Gruppierung um den Netzwerktraffic zu optimieren, können viele kleine Messages auch zu einer großen Nachricht zusammengefasst werden MQSeries sorgt automatisch für das Beibehalten der richtigen Reihenfolge (falls die Nachricht wieder auseinander genommen wird)

3.3.Distribution Lists eine Message kann natürlich auch an mehrere Ziel- Queues gesendet werden wenn diese Queues vom selben Manager verwaltet werden, können die Nachrichten nur an diesen Manager gesendet werden dieser verteilt sie dann an die Queues dynamic distribution list :welche Queue gehört zu welchem Manager

3.4.Message Types Datagram:konventionelle Nachricht, welche ohne Rückmeldungs- forderung einfach nur Daten transportiert Request:mit Rückmeldeforderung Reply:Antwortnachricht auf Request Report:Event- Information (z.B. bei Fehler oder als Bestätigung

3.5.Persistenz von Messages Messages können persistent oder nicht persistent übertragen werden: persistent messages: - Übertragung wird mittels eines Über- tragungsprotokolls sichergestellt - bei Systemausfällen reproduzierbar non persistent messages: - bei Systemausfällen nicht reproduzierbar

3.6.Message Descriptor Der Message- Descriptor enthält: - Version Number - MessageID/CorrellationID - persistent/non persistent - Priorität - Date & Time - Lifetime of a message - Returnadress - Format - Sender application and type - report option - Backout- Counter - Segmentierung/ Gruppierung

3.Queue- Manager der Message- Queue- Manager (MQM) ist der Kern von MQSeries und wird durch das MQSeries-Run-Time-Program implementiert seine Hauptaufgabe ist (wie schon erwähnt) die Verwaltung der Queues zusätzlich stellt er einige Funktionen bereit, die den Traffic verringern bzw. die Arbeit des Programmierers vereinfachen dies geschieht durch die Bereitstellung des MQI durch den MQM

4.Queue- Manager Application Program A PUT to Q1 Application Program B GET from Q1 Queuemanager mit Queue Q1

4.Queue- Manager Hauptaufgaben des Queuemanagers: - verwalten der Message- Queues der Applikationen - zur Verfügung stellen des MQI's - nutzen vorhandener Netzwerk- Facilities (MQM- to-MQM) - ggf. segmentieren und gruppieren - übernehmen von Aufgaben der Kommunikations- koordination (Distribution List) - liefern von Queue-Verwaltungs-Funktionen

4.1.Queue-Manager-Cluster MQMs können in Clustern zusammengeschlossen werden Konventionelle Verbindung: partial repository (enthält nur Informationen über interessierende Objekte) Cluster- Verbindung: full repository (enthält Informationen über alle Objekte im Cluster) den Programmierer kümmert es nicht, ob er in einem Cluster arbeitet oder nicht; die Koordination übernimmt MQSeries

4.2.Queue-Manager-Objekte es gibt folgende Objekte für den Queuemanager: –Queuemanager –Queues –Channels –Prozess- Definitionen

4.2.Channels MQ Client MQ Client MQM MQI- Channels bidirektional Message- Channels unidirektional

5.Message- Queues MQSeries unterscheidet je nach Zweck verschiedene Arten von Queues: - Lokale Queues - Cluster- Queues - Remote Queues - Transmission Queues - Dynamic Queues - Alias Queues

6.Events es gibt MQSeries-Instrumentations-Events, welche benutzt werden können, um Operationen eines Managers zu verfolgen Events generieren spezielle Nachrichten, wenn bestimmte Bedingungen erfüllt sind sie lassen sich z.B. wie folgt kategorisieren: - Queuemanager- Events - Performance- Events - Channel- Events

7.Zusammenfassung Middleware MQSeries Alternativen: RPC, MOM, ORB Queuemanagerobjekte: -Queues -Queuemanager -Channels -Events

Quellenverzeichnis Herrmann/Kebschull/Spruth: Einführung in z/OS und OS/390 Bulitz/Döhre: Seminararbeit Enterprise Middleware Fey: Vorlesung “Cluster Computing“