Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Detlef Steinmann Geändert vor über 9 Jahren
1
Blockseminar Großrechneraspekte Messaging Systems/ MQSeries (Grundlagen) Steffen Goldau
2
1.Einführung 2.Messaging und Queuing 3.Messages 4.Queue-Manager 5.Message-Queues 6.Events 7.Zusammenfassung
3
1.1.Motivation Middleware ermöglicht verteilten An- wendungen miteinander zu kommunizieren „verteilt“ : z.B. Mainframes oder Cluster.... Netzwerk zunächst erst einmal beliebig
4
1.1.Motivation Hauptkomponenten von MQSeries: NETWORK Applikation MQSeries Applikation MQSeries MQI
5
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
6
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
7
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
8
1.2.Middleware Desktop: Windows 2000- Server and Client Microsoft Windows (MQSeries V2.0 - 16 Bit) Microsoft Windows (MQSeries V2.1 - 32 Bit) Windows 95 (32- Bit)- Client SCO Unixware- Server SCO Unix- Server SCO Unix (L2)- Client DOS Client- available as SupportPac MacOS (OEM)- Client
9
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
10
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)
11
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
12
1.4.Anwendungsgebiete Workflow-Management: Lotus Notes Integration prinzipiell jeglicher IT- Systeme, insbesondere aber: - Finanzen - Herstellung - Handel & Vertrieb - Gesundheitsfürsorge - Reise- & Transportwesen
13
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)......
14
1.5.Alternativen alternative Prinzipien zum Message- Queuing: RPC(remote procedure call) MOM (message oriented middleware) ORB (object request broker)
15
2. Messaging und Queuing 2.1.Speicherkommunikation vs Nachrichtenkommunikation Speicherkommunikation: Global Memory CPU Lok.Mem. CPU Lok. Mem.
16
2.1.Speicherkommunikation vs Nachrichtenkommunikation Nachrichtenkommunikation: NETWORK CPU Lok.Mem. CPU Lok.Mem.
17
2.2.Paketkommunikation vs Kanalkommunikation Paket:z.B.:Bussysteme, internes Internet Kanal:z.B.:Telephon in der Realität treten nat. auch Mischformen auf
18
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
19
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
20
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
21
2.3.Grundlegende Prinzipien Applikation A Applikation B Queue- Manager Queue- Manager AQ(A) EQ(A) AQ(B) EQ(B) MQI
22
2.3.Grundlegende Prinzipien Applikation A Applikation B Queuemanager AQ(A)=EQ(B) EQ(A)=AQ(B) MQI
23
3.Messages Messages bestehen prinzipiell aus zwei Teilen: - Daten (ab Version MQSeries 5 bis zu 100MB) - Header (MessageID, Steuerattribute,...)
24
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
25
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)
26
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
27
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
28
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
29
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
30
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
31
4.Queue- Manager Application Program A PUT to Q1 Application Program B GET from Q1 Queuemanager mit Queue Q1
32
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
33
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
34
4.2.Queue-Manager-Objekte es gibt folgende Objekte für den Queuemanager: –Queuemanager –Queues –Channels –Prozess- Definitionen
35
4.2.Channels MQ Client MQ Client MQM MQI- Channels bidirektional Message- Channels unidirektional
36
5.Message- Queues MQSeries unterscheidet je nach Zweck verschiedene Arten von Queues: - Lokale Queues - Cluster- Queues - Remote Queues - Transmission Queues - Dynamic Queues - Alias Queues
37
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
38
7.Zusammenfassung Middleware MQSeries Alternativen: RPC, MOM, ORB Queuemanagerobjekte: -Queues -Queuemanager -Channels -Events
39
Quellenverzeichnis Herrmann/Kebschull/Spruth: Einführung in z/OS und OS/390 Bulitz/Döhre: Seminararbeit Enterprise Middleware Fey: Vorlesung “Cluster Computing“
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.