Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


Präsentation zum Thema: "Blockseminar Großrechneraspekte Messaging Systems/ MQSeries (Grundlagen) Steffen Goldau."—  Präsentation transkript:

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 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

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“


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

Ähnliche Präsentationen


Google-Anzeigen