Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

1 State of the Art 2008 Lattwein GmbH Heinz Peter Maassen.

Ähnliche Präsentationen


Präsentation zum Thema: "1 State of the Art 2008 Lattwein GmbH Heinz Peter Maassen."—  Präsentation transkript:

1

2 1 State of the Art 2008 Lattwein GmbH Heinz Peter Maassen

3 2 Agenda SOA – SOAP – Webservices Who am I ? CPGXML Performance Messung mit JMeter z/VSE – Tipps Host on Demand

4 3 SOA – SOAP – WebServices Was ist SOA ? Serviceorientierte Architektur (SOA), service oriented architecture, dienstorientierte Architektur. SOA ist eine Methode, um vorhandene DV Komponenten wie Programme, Datenbanken, Server, WebSites u.a. so zusammenzufassen, dass diese anderen Abteilungen oder Kunden zur Verfügung gestellt werden können.

5 4 SOA – SOAP – WebServices Sicht vom Programmierer: Alles in einem Guss ist kein dienst- orientiertes Programm! 3270 Input Logik 3270 Output Logik GUI 3270 CPGXML FrüherHeute GUI Browser

6 5 SOA SOA sollte folgende Merkmale haben: Ein Dienst ist in sich abgeschlossen und kann eigenst ä ndig genutzt werden. Dienste sind in einem Netzwerk verf ü gbar. Jeder Dienst hat eine ver ö ffentlichte Schnittstelle. F ü r die Nutzung reicht es, die Schnittstelle zu kennen. Kenntnisse ü ber die Details der Implementierung sind hingegen nicht erforderlich. Die Benutzung von Diensten ist Plattform unabh ä ngig, d.h. Anbieter und Nutzer eines Dienstes k ö nnen in unterschiedlichen Programmiersprachen auf verschiedenen Plattformen realisiert sein.

7 6 Ziele von SOAP E rweiterbarkeit E infachheit E insatz auf verteilten Systemen, auch durch Firewalls hindurch Das Rad nicht neu zu erfinden, sondern aktuelle Standards (HTTP und XML) zu nutzen

8 7 Was ist ein Web Service ? Web Services sind aufrufbare Dienste im Internet. In Web Services sind Kommunikation und Methode standardisiert. Web Services sind registriert. Sie werden verwendet um einen Datenaustausch zwischen Programmen auf verschiedensten Rechnern auszuführen. Verwenden intern meist XML Format und HTTP Protokoll. * Siehe Definition von SOA !

9 8 WebService: Beispiele  Beispiele für Webservices:  eBay Price Watcher Checks current bid price of an eBay auction.  Currency Exchange Rate Exchange rate between any two currencies  Domain Name Checker Checks whether a domain name is available  BabelFish Interface for AltaVista's Babelfish service.  FedEx Tracker Access to FedEx Tracking information  SOAP Web Search SOAP Interface to major search engines  Text-To-Speech (TTS) A Text-To-Speech (TTS) web service.  Airline Fare Checker Returns airfare/flight information.  German Bank Code Lookup (BLZ) Lookups German bank codes for name, city and zipcode  Stock Quote Stock quote service which actually provides more than just quote.  Und viele mehr... siehe Internet.

10 9 SOAP Beispiel: Onlineshop Ein Kunde möchte in einem Onlineshop Artikel bestellen. Der Onlineshop ist in einen Applikationsserver realisiert.  Dieser Applikationsserver überprüft über den SOAP Web Service des Servers A, ob die angegebene Adresse gültig ist,  verifiziert über den SOAP-Dienst B die Kreditkartennummer,  ermittelt über den SOAP-Dienst C die für das jeweilige Land zu berechnenden Steuern (Umsatzsteuer, Luxussteuer,...),  erfragt beim SOAP-Dienst D tagesaktuelle Währungsumrechnungskurse, um den Endpreis korrekt berechnen zu können und  zeigt dem Benutzer alle Ergebnisse gesammelt im Webbrowser an.  Wenig Aufwand, wenn schon Funktionsmodule = Dienstmodule existieren.

11 10 SOAP Beispiel: Onlineshop Intranet/ Internet Web Applications-Server Firewall A C B Dienst A = Adresse prüfen Dienst B = Kreditkarte prüfen Dienst C = Steuern ermitteln Dienst D = Umrechnungskurs D

12 11 SOAP und CPG5 SOAP und WebServices können einfach mit CPGXML auf z/VSE zugreifen und bestehende Anwendungen implementieren. Der Host wird als Server Komponente in die SOAP Anwendung eingebunden. CPGXML Anwendung Web Service A SOAP Windows, Linux,... SOAP-XML z/VSE Linux/ Windows

13 12 Web Services und Lattwein z/VSE als Webservice Dienst Provider wurde von Lattwein für Kapferer realisiert. z/VSE als Webservice Client wurde parallel von Lattwein für Wessels und Müller entwickelt.

14 13 WebService KabisWS z/VSE als Webservice Provider CPGXML Internet z/VSE Der WebService Kabis nimmt Bestellungen von Apotheken entgegen entgegen oder gibt Aus- kunft über die Verfügbarkeit von Medikamenten.

15 14 TecCom Client z/VSE als Webservice Client Wessels z/VSE TecCom stellt einen zentralen Bestellservice für die Automobil Großhändler zur Verfügung. www.teccom.de Aus mehreren Anwendungen können Bestellungen über TecCom erfolgen. z/VSE spricht über TCP/IP den TecCom Client an, der über WebServices bei den verschiedenen Lieferanten Bestellungen auslöst. WebService TecCom Lieferanten wie z.B. Hella, Bosch..

16 15 Who Am I ? Einer unserer Kunden will Drucker nicht nach Terminal Namen sondern über die IP-Adresse zuordnen. Ein anderer Kunde möchte aus einer 3270 Anwendung - PC Programme, wie MS-Word oder Acrobat Reader, mit einer vom Host festgelegten Datei auf seiner Workstation starten.

17 16 Who Am I ? Manchmal wäre es schön, die IPAdresse der Telnetsession zu wissen. Starten einer Anwendung aus 3270 Session, z.B. MSWord, Acrobat Reader,... Geht natürlich über eine Tabelle – Terminalname = IP-Adresse Das ist aufwändig Funktioniert aber bei allen Emulationen SNA, NONSNA, TCP/IP Telnet Ist aber keine Standard Lösung

18 17 Who Am I ? Ab TCP/IP 1.5.E gibt es eine Funktion, die GetHostByLuname heißt. Also muss man mit: EXEC CICS INQUIRE TERMINAL TERM(EIBTRMID) NETNAME(LUNAME) den LU-Namen ermitteln.

19 18 Who Am I ? Über Socket Befehle kann man jetzt die IP Adresse der eigenen Bildschirm Session ermitteln. Das geht über Socket Programmierung mit den Befehlen: SOCKET OPEN,CONTROL, SOCKET SEND,CONTROL, Senden: GETHOSTBYLUNAME SOCKET RECEIVE,CONTROL, Lesen: IP Adresse Terminal SOCKET CLOSE,CONTROL, (*) Beispiel Programm siehe GSE Tagung Bonn

20 19 Who Am I ? Beispiel: Aufruf eines Word Dokuments aus einem 3270 Programm: - -C. - EDIT PARM. EDIT CPGCOM. - EXPR WORDSTRT S. * GetHostbyLuname - -O. - FIELD CPGCOM - 2 'SD'. * SEND.DOC - 4 ' '. * RETURN CODE - CPGTID 8. * 'L201' - PARM 108. - FIELD PARM. - 24 '\\LWSERVER03\FIRMA\AUSTA' - 48 'USCH\Wordaufruf.doc '

21 20 Who Am I ? Wordstart: Ermittelt die IP-Adresse aufgrund des eigenen Terminalnamens IP Found Ja: Nein: Check auf Tabelle in CPGWRK Diese Tabelle wurde mit einem Java Programm und CPGXML erstellt. Aufruf CPGSHELL mit Parametern

22 21 Performance Messung  Ein neues Projekt bei einem Kunden wird von einem externen Beratungsunternehmen entworfen. Hierbei sollte zunächst eine Machbarkeitsstudie erstellt werden.  Es ist jedoch schwer, ohne fundamentales Wissen über z/VSE dessen Stärken einzuschätzen und zu bewerten.  Wir haben an dieser Untersuchung teilgenommen, aus eigenem Interesse und um eventuelle Fehleinschätzungen zu vermeiden.

23 22 Performance Messung  Bei einem POC (Proof of concept) wurde für CPGXML Aufrufe das Tool Jakarta Jmeter verwendet.  Jmeter kann HTTP Befehle gegen einen Apache Server automatisch absetzen und ermittelt Performance Werte  So kann festgestellt werden, ob die Hardware Ressourcen ausreichend sind oder ob sonstige Engpässe bei einer geplanten Applikation bestehen.

24 23 Performance Messung  Die Starteinstellungen:

25 24 Performance Messung  Aufruf der CPGXML

26 25 Performance Messung  Graphische Anzeige der Ergebnisse:

27 26 Performance Messung  Tabellarische Darstellung:

28 27 Ergebnis:

29 28 Performance Messung

30 29 TCP/IP 1.5.F Neues Programming Interface Port Queueing Facility Programm: FILESYS Änderungen zu 1.5.E Kurs TCP/IP am 17-19.6.2008

31 30 TCP/IP 1.5.FIPNETPRE Neue Programmier Schnittstelle IPNETPRE ersetzt IPNETRAN Keine Größen Begrenzung von Sourcen IPNETPRE ist schneller und verbraucht weniger Ressourcen.

32 31 TCP/IP 1.5.FIPNETPRE Ist Source kompatibel. Programme können sowohl mit IPNETPRE als auch mit IPNETRAN erstellt werden. - Einfache Umstellung. Jedoch nicht abwärts kompatibel läuft nicht mit 1.5.E und kleiner! Assembler war zunächst nicht unterstützt.

33 32 TCP/IP 1.5.FPort Queueing Zeit zum Starten einer Folgetransaktion dauert relativ lange. Mit der Port Queue können ankommende Requests (= Binds) gebuffert werden, wenn gerade kein LISTEN aktiv ist. Das verbessert die Verfügbarkeit von LISTEN Transaktionen / Programmen.

34 33 TCP/IP 1.5.FPort Queueing EXEC TCP OPEN * Bind erfolgt EXEC CICS START TRANSACTION(TRID) EXEC TCP RECEIVE EXEC TCP SEND EXEC TCP OPEN * Bind erfolgt EXEC CICS START TRANSACTION(TRID) EXEC TCP RECEIVE EXEC TCP SEND LISTEN TASKLISTEN TASK ( Folgetask )

35 34 TCP/IP 1.5.FFILESYS Mit dem Befehl DEFINE FILESYS wurden alle Dateien im Standardlabel als DEFINE FILE für FTP definiert. Damit wurde z/VSE offen wie ein Scheunentor! Das Programm FILESYS erstellt die Source für die IPINIT im Quelltext!

36 35 TCP/IP Seminar VSE-Systemer-Seminar "Inside TCP/IP" 1. TCP/IP im VSE/ESA Installation des TCP/IP Konfiguration native unter VSE/ESA und als Gateway unter TCP/IP unter z/VM 2. Telnet Terminal-Definitionen im TCP/IP und im CICS TS im CEDA Auto Install Terminals (7 Farben/verschiedene Größen, etc) 3. GPS Drucken unter TCP/IP im VSE/ESA 4. PDF-Dokumente über TCP/IP erstellen 5. FTP Batch und CICS 6. Programmierung mit TCP/IP – Tipps und Beispiele 7. Wichtige Änderungen und Neuerungen in 1.5E und 1.5F

37 36 SET SDL,... nicht nur im BG ! Seit VSE/ESA 2.6 gilt (Siehe Release Guide): 2.3.2 Enhancement to the SET SDL Command The restriction that the SET SDL command can be issued from the BG partition only has been removed. Like the commands STDOPT and SETPARM SYSTEM since VSE/ESA 2.5, SET SDL can now be issued from any partition. Tipp

38 37 Host On Demand Ein z/VSE Kunde hat für seine 3270 Emulation WebSphere Host On-Demand im Einsatz und wollte Auf eine aktuelle Version umstellen. Active Directory so einbinden, dass die verfügbaren Terminal Sessions einem Benutzer zentral zugewiesen werden können. Spracheinstellung und Zuordnung der Anwendungsumgebung je User sollten zentral verwaltbar sein.

39 38 Host On Demand Kennen Sie Host On Demand ? (HOD) Sagt Ihnen Telnet 3270E etwas ? Kennen Sie Anwendungen mit AD ? Nach der Anmeldung am HOD erhält man:

40 39 Host On Demand -Telnet 3270E - Active Directory Vorteile von HOD über TN3270E und Verwaltung im AD: Host Sessions werden zentral verwaltet genau 1-mal. Egal ob der User im LAN arbeitet, oder über ein WAN, er erhält immer die gleichen Terminal Sessions. Das geht sogar über VPN ohne Modifikationen. Sehr hilfreich, wenn die Anwender nicht nur lokal, sondern auch aus vielen Ländern remote auf das z/VSE = CICS zugreifen.

41 40 Host On Demand Nach der Anmeldung beim AD (Active Directory) wird über Websphere eine Webseite mit den möglichen 3270 Sessions angezeigt. Diese Sessions werden vom Netzwerkadministrator vorkonfiguriert, so dass man eine zentrale Wartung der Hostsessions hat. Auf dem Client PC wird keine Terminal Emulation installiert. Das bedeutet: Zentrale Verwaltung im AD für alle externen und internen 3270 Sessions. Was muss auf dem Host definiert werden? TCP/IP Telnet 3270E VTAM APPL für diese Telnet Sessions Auf dem Client PC muss ein Browser installiert sein, sowie eine aktuelle Java Version.

42 41 Telnet 3270E Telnet 3270E Unterstützung: Listener Daemon Port: 3270 Effector Daemon LuName: LWTNL202 Effector Daemon LuName: LWTNL201 TCP/IP TN3270E ClientPort: 3270 LU= LWTNL201 TN3270E ClientPort: 3270 LU= LWTNL202 VTAM LU=LWTNL201 LU=LWTNL202

43 42 Telnet 3270E Durch Doppelklick auf ein 3270 Symbol wird eine Session gestartet. Die Session erhält die TerminalID L201 da der LuName = LWTNL201 war. Das wird über Termi- nal Autoinstall realisiert.

44 43 Active Directory Active Directory Service aus Wikipedia :

45 44 Active Directory Active Directory verwalten Im AD werden Standards für alle Benutzer einer Firma zentral verwaltet. Möchte man eigene Spalten zum AD hinzufügen, so muss das beantragt werden. Über X.500 OID ( Unique Object Id ) kann der Hersteller einer Software ins AD zusätzliche Einträge registrieren. (IANA.org) Der Einfachheit wegen haben wir uns entschieden, die Session Namen unter Beschreibung abzulegen, und diese über HOD Scripte in die Startseite eines Benutzers zu integrieren.

46 45 Host On Demand -Telnet 3270E - Active Directory Vorteile von HOD über TN3270E und Verwaltung im AD: Host Sessions werden zentral verwaltet genau 1-mal. Egal ob der User im LAN arbeitet oder über ein WAN, er erhält immer die gleichen Terminal Sessions. Das geht sogar über VPN ohne Modifikationen. z/VM – z/VSE – z/OS  Host anywhere

47 46 Noch Fragen ?

48 47 Anhang Nachfolgend nähere Erläuterungen.

49 48 Telnet 3270E TCP/IP Telnet Storage Requirements Je Telnet Session, die definiert wird, braucht TCP/IP 4 KB virtuellen Speicher. Sessions, die gestartet werden und kein Buffer Sharing verwenden, brauchen 16K virtuellen Speicher. Buffer Sharing wird durch den Parameter POOL=YES definiert. Telnet Sessions mit Buffer Sharing belegen 20 Buffer à 16 KB für die ersten 100 Sessions. (320 KB) Je 10 Sessions sollte 1 weiterer Buffer definiert werden. 100 Sessions -20 Buffer - 320 KB 200 Sessions - 30 Buffer - 480 KB 400 Sessions-50 Buffer - 800 KB 800 Sessions-90 Buffer -1.440 KB Tipp

50 49 Telnet 3270E Definition von Telnet TN3270E: 1. Listener DEFINE TELNETD,ID=LG3270E,TN3270E= L,PORT= 3270,GROUP= LG3270E,POOL=YES 2. Ellector DEFINE TELNETD,ID=L201,TN3270E=E,TERMNAME=LWTN L201,GROUP= LG3270E, - TARGET=CICSTEST,POOL=YES,LOGMODE=NSX32702,LOGMODE3=NSX32703, - LOGMODE4=NSX32704,LOGMODE5=NSX32705 (,MENU=VTAMLW alternativ zu TARGET)

51 50 Telnet 3270E Dazu die VTAM Definition: CATALOG TCPAPPL.B REPLACE=YES TCPAPPL VBUILD TYPE=APPL TCPDIAG APPL AUTH=(ACQ) TCPIP APPL AUTH=(ACQ) TELNGRP1 GROUP EAS=1. LWTNL201 APPL AUTH=(ACQ)(oder,EAS=1) LWTNL202 APPL AUTH=(ACQ) LWTNL203 APPL AUTH=(ACQ)

52 51 TCP/IP 1.5.FPort Queueing Mit Query PortQueue kann abgefragt werden, ob PQ aktiv ist. In der IPINIT oder als Consolbefehl: PORTQueue PORT=xxxxx,TIMEOUT=sec] [,DEPTH=nn] (xxxxx =1-65536, sec=1-60, nn=0-100)

53 52 TCP/IP 1.5.FPort Queueing Beispiele: PORTQueue PORT=4712,DEPTH=32 PORTQueue PORT=80,TIMEOUT=10, DEPTH=100

54 53 TCP/IP 1.5.FPort Queueing 100 portqueue port=4712,depth=32 F7 0097 IPN405I Port queue values successfully set F7-0100 IPN300A Enter TCP/IP Command 100 query portqueue F7 0097 IPN253I > F7 0097 IPN400I Port: 4712 Timeout: 3 sec Limit: 32 F7 0097 IPN401I Queued: 0/0/0 Reject: 0 Good: 0 Lost: 0 F7 0097 IPN402I Avg wait: 0 msec; Avg lost: 0 msec; Int: 14.467 F7 0097 IPN403I Partition: F7 Phase: IPNET F7-0100 IPN300A Enter TCP/IP Command

55 54 TCP/IP 1.5.FFILESYS Der folgende Job: // JOB FILESYS EXECUTION // LIBDEF *,SEARCH=PRD2.TCPIP15F // EXEC FILESYS SET SYSPCH=ON /* Erstellt aus dem Standard Label: ( siehe nächste Seite)

56 55 TCP/IP 1.5.FFILESYS DEFINE FILE,DLBL=IJSYSRS,PUBLIC='VSE.SYSRES.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=IJSYSR2,PUBLIC='VSE.SYSRES.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=IJSYSR1,PUBLIC='SYS.NEW.RES',TYPE=LIBR DEFINE FILE,DLBL=PRD1,PUBLIC='VSE.PRD1.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=PRD2,PUBLIC='VSE.PRD2.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=PRDPRIM,PUBLIC='VSE.PRD1.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=PRIMARY,PUBLIC='VSE.PRIMARY.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=SYSDUMP,PUBLIC='VSE.DUMP.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=CRYPTO,PUBLIC='VSE.CRYPTO.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=DTSFILE,PUBLIC='ICCF.LIBRARY',TYPE=ICCF DEFINE FILE,DLBL=IJQFILE,PUBLIC='VSE.POWER.QUEUE.FILE',TYPE=POWER DEFINE FILE,DLBL=IJDFILE,PUBLIC='VSE.POWER.DATA.FILE',TYPE=POWER DEFINE FILE,DLBL=IJSYSCT,PUBLIC='VSAM.MASTER.CATALOG',TYPE=VSAMCAT DEFINE FILE,DLBL=VSESPUC,PUBLIC='VSESP.USER.CATALOG',TYPE=VSAMCAT DEFINE FILE,DLBL=IESCNTL,PUBLIC='VSE.CONTROL.FILE',TYPE=KSDS DEFINE FILE,DLBL=IESMSGS,PUBLIC='VSE.MESSAGES.ONLINE',TYPE=KSDS DEFINE FILE,DLBL=CPGWKL,PUBLIC='CPGWKL.CPGK',TYPE=KSDS

57 56 TCP/IP 1.5.FFILESYS  Diese generierten Definitionen in die IPINIT bei Bedarf eintragen, damit ein FTP von und zu diesen Dateien erfolgen kann. DEFINE FILE,DLBL=PRD2,PUBLIC='VSE.PRD2.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=PRDPRIM,PUBLIC='VSE.PRD1.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=PRIMARY,PUBLIC='VSE.PRIMARY.LIBRARY',TYPE=LIBR DEFINE FILE,DLBL=DTSFILE,PUBLIC='ICCF.LIBRARY',TYPE=ICCF DEFINE FILE,DLBL=IJQFILE,PUBLIC='VSE.POWER.QUEUE.FILE',TYPE=POWER DEFINE FILE,DLBL=IJSYSCT,PUBLIC='VSAM.MASTER.CATALOG',TYPE=VSAMCAT DEFINE FILE,DLBL=VSESPUC,PUBLIC='VSESP.USER.CATALOG',TYPE=VSAMCAT DEFINE FILE,DLBL=MYFILE,PUBLIC=‚MYFILE.KSDS',TYPE=KSDS...................

58 57 Host On Demand TN3270E ist eine Erweiterung zu Telnet 3270. Hierbei werden 2 Daemons gestartet: Listener Daemon und zwar 1 Daemon je Port Effector Daemon, je 1 Daemon pro Session Bei TELNET3270E wird der LU-Name bei der Terminal Definition mitgegeben. Damit ergibt sich eine eindeutige Zuordnung zur Terminal-ID.

59 58 Active Directory Einige Parameter lassen sich vom Benutzer ändern, andere nicht. Damit kann sichergestellt werden, dass nur befugte Personen Zugang zum CICS erlangen. Man kann jedoch fast alle Parameter sperren, so dass keine Modifikationen möglich sind. LWTNL201

60 59 Active Directory HOD Sessions verwalten Die Sessions werden vorkonfiguriert- hierzu wird der Implementierings- assistent aufgerufen. Nach Auswahl einer Session können die Session Daten verändert und eingestellt werden. Außerdem kann bestimmt werden, ob am Client Änderungen zu diesen Definitionen erlaubt werden oder nicht.

61 60 Active Directory HOD Session Einstellungen LWTNL203

62 61 Host On Demand - Active Directory Scripte von HOD anpassen In den Scripten kann man jetzt Parameter der Default Konfiguration der Sessions austauschen, die man aus AD gelesen hat. Siehe hierzu die letzten drei Zeilen dieses Scripts.


Herunterladen ppt "1 State of the Art 2008 Lattwein GmbH Heinz Peter Maassen."

Ähnliche Präsentationen


Google-Anzeigen