CICS01 - zDB202 etour d’expérience modernisation Java z/O an-Luc LACHENY (LaBanquePostale) gis DAVID (IBM) [email protected] our d’expérience du POC Java z/OS sous CICS…en 45m bjectifs – périmètre émarche du POC sous CICS érimètre du POC éalisation du POC JAVA et les Outils de développement JAVA et l’ Exploitation JAVA et DB2 sous CICS ynthèse et suite à donner ller plus loin avec Java dans CICS Présentation de Jean-Luc LACHENY (LaBanquePostale) Commentée par Régis DAVID (IBM) ! VA sur Z: une opportunité La chaine de liaison « PNiLD » actuelle positionne : ‒ La Présentation et Navigation sur « Distribué » ‒ La Logique métier et le stockage des Données sur « Z » ! JSE et JEE… Nous ne confondons pas …le langage JAVA (JSE) …et l’architecture JEE C’est du langage dont il est questi La Logique métier est écrite en langage COBOL et s’exécute sous le gestionnaire transactionnel CICS Le positionnement des données est ancré sur le Z ‒ Tant qu’il existera un programme COBOL/CICS Une programmation de JAVA sur Z permettrait d’avoir : ‒ Un langage unique sur l’ensemble de la chaine de liaison ‒ Et à terme, un choix de placement des traitements et des données (Distribué ou Z) de JAVA sur Z : Objectifs et périmètre jectifs Vision court terme sur la faisabilité de JAVA sur Z ‒ Programmation JAVA dans l’ensemble des cas d’utilisations, Performance, Exploitabilité,… et sur les économies potentielles apportées par le langage ‒ Utilisation processeurs ZiiP, Non facturation MLC Donner une vision stratégique à MT/ LT ‒ Les nouveaux programmeurs sont « JAVA » ‒ Contribuer à l’ouverture des traitements du SI LBP sur l’ensemble des plates-formes ‒ … etc. rimètre « Logique métier » et « Accès aux Données » sur Z (présentation/navigation hors périmètre car déjà en ‒ En environnement transactionnel CICS ‒ En environnement BATCH POC marche du POC avec assistance IBM Maquette JAVA CICS : Réécriture des services applicatifs du SAMPLE La Poste ntégration Z avec a plateforme de ev JAVA MDV DAT Ecriture d’un pgm JAVA pour CICS E&D : CDM tiques de développement LBP ntégration des composants existants Mise en place des répertoires et outils unix dans USS MTC MDV DAT Intégration et coexistence JAVA avec COBOL MTC MDV DAT Architecture technique JAVA dans CICS : levée des incertitudes MTC / DAT Exécution des programmes / comparatif avec Cobol MTC MDV DAT MTC Pratique de Production LBP isabilité de la programmation JAVA dans l’ensemble des cas d’utilisation Batch , Proc Stock DB2, WAS sur Z) ! Pourquoi CICS en pr Compétences<>Cultu Immédiate réactivité Cimplicité en Confian Stratégique DAT Validation opportunité OK, OK, à creuser C JAVA: Intégration Z Pratiques de développement LBP t intégration des composants existants Pratique de Production LBP Architecture technique Validation opportunité Strada/AESC SAM GCR … Plateforme de développement Eclipse Framework Service App Gestion Co Client IC ‒ OK, merci le plugin CICS Explorer ‒ Utilisation de l’outillage standard ‒ (Eclipse ou RAD - Pas de révolution) ‒ Framework ID OK, simplifications, JZOS OK ‒ Démarche: CICS pour JEE.z.istes Debug ‒ Lenteur liée à la plateforme distante. ‒ Lié à l’utilisation de la JVM dans CICS Architecture applicative ‒ Application COBOL + JAVA avec Framework IC SAM Mais conversion entre COBOL et JAVA ‒ Application full JAVA sans Framework IC Transformation du Framework en JAVA ? Lien I.S. Plateforme distante: RFE bouchon Soluce JVM dans CICS : JVMSERVER Remise en cause du Framework Strada/AESC !?! Debugger Java Commentaire développeur: JCICS LINK = EJB Remote en 1000 fois plus simple :O) SD Lien direct ID - WOR CNN IS Lié à la programmation des Services Applicatifs CICS à la DISFE (Banque Postale) ! STRADA AESC ‒ Choix cornélien !! Le Servic STRADA AESC ACCESSEUR sur Mainframe Z = Système de fichiers Unix, threads Unix (une JVM = appels Unix en langage C + J C JAVA: Accesseur DB2 Pratiques de développement LBP et intégration des composants existants Archi technique Pratique de Production LBP Accès aux données relationnelles ‒ JDBC : Le cas le plus facile pour un POC ‒ La communication est gérée par CICS (DB2Tran) ‒ Intégration des packages dans la collection NULLID ‒ Le cache DB2 œuvre sans problème ‒ SQLJ : Le cas le plus proche de COBOL ‒ ‒ ‒ ‒ Validation opportunité ! CICS prend la main à travers DSN ;O) …et on bénéficie des optimisations …et on simplifie le framework ID En V5 pas besoin de TCB dédié à on reste sous le thread Java Création d’un pseudo DBRM Association d’un package au programme JAVA Autorisation sur le package/plan, pas sur l’ensemble des tables OSGi c’est du packaging Adaptation OSGI / Développement SQLJ à voir… OK, OK, à creuser C JAVA et Production Pratiques de développement LBP et intégration des composants existants Architecture technique Pratique de Production LBP Validation opportunité ! Fichier compressé <> loadmodule Transfert des modules JAVA (étude théorique ) OK ‒ Utilisation de l’outillage standard ‒ Endevor comme actuellement pour COBOL ‒ CVS comme actuellement pour JAVA ! Définition CICS Bundle OSGi… …dans un Bundle CICS …newcopy…multiVersions JVM.z/OS = JVM.com.partout. ‒ La version 5 (et 4.2) de CICS, plus récente, est la mieux adaptée à la gestion des programmes JA Boite noire JVM ‒ Instrumentation JVM standard. Utilisé IBM Support Assistant pour optimisation GC … S’adaptera aux règles qui seront définies par la maîtrise C JAVA : Des tests – Synthèse et Comparatif Pratiques de développement LBP et intégration des composants existants Pratique de Production LBP Architecture technique Validation opportunité ! Comparer des choses com Chauffer la JVM (ex. opt JI Java 6, ou mieux.. 7 et 64 ..CICS V4.2 Echantillon de 200 : Traitement Z196 Test Cobol Test SAM JAVA Test Full JAVA ZEC12 Test Cobol Test SAM JAVA Test Full JAVA Echantillon Moyenne (ms) mediane Rep CICS QR CICS Gain V4 Gain V5 200 200 200 115 101 105 100 95 97 6,5 9,7 20,4 1,303 1,099 0,3825 -6,41% 2,75% -86,49% 200 200 200 83 79 93 74 71 90 2,4 4,1 9,4 0,73 0,6015 0,189 -9,44% -7,74% -88,15% Temps de réponse utilisateurs proches Economie de 10 à 90 % sur les MIPS « facturables » Temps de réponse proche et économie des Mips « facturables » Echantillon de 4000 – En attende retour IBM Temps Resp dev être id nclusions du POC Java CICS n CICS Version 4.1 (jusqu’à fin 2013) Programmation : OK dans un cadre expérimental ou limité Framework JAVA : Petite évolution du Framework existant Coexistence avec l’existant : OK Intégration dans les CICS (Définitions) : OK Cas d’Usage préconisé dans le cadre d’une utilisation pour quelques niches (ex : Pour PARTAGE, calcul du jeton « sécurité », …) n CICS Version 5.1 (disponible fin 2013 – 2014…) Refonte de la méthode de programmation (OSGI) ‒ Tendance du marché… Cas d’usage se rapproche plus de celui de COBOL Mais les processus autour des services applicatifs seront à revoir (AESC, …) mps de réponse/ traitements Les Temps de réponse « utilisateurs » sont de niveaux comparables Economie de 10% sur le coût CPU du service applicatif, si SAM seulement (type 1) ‒ Quasi-immédiate ! Economie de 90% sur le coût CPU du service applicatif, si Full JAVA (type 2), ‒ Nécessite des pré-requis : Réorganisation de l’utilisation de l’AESC Dépendra du nombre de processeurs ZiiP disponibles ! ;O) Que du bonheur Même pas surpris… Vite passer en V5 (ou 4. VA sur Z - Synthèse de l’ETUDE s une optique de court terme avec la version CICS actuelle : Autoriser les développements JAVA sur CICS pour des besoins spécifiques (Chiffrement, …) >>> Les économies réalisées avec JAVA sont présentes >>> Les performances sont proches s une vision stratégique à MLT : Il faut se donner les moyens de favoriser le développement JAVA >>> Des économies substantielles à réaliser >>> A mettre en parallèle avec des évolutions d’architecture ou des déports (ou duplication) des données. e passer à une phase de généralisation dans une cible MT/LT, il faut : oir les impacts de l’architecture AESC, dans le cas d’usage CICS Intégrer la plate forme Z dans l’ingénierie de développement JAVA (framework) Consolider la démarche mise en place lors du POC JAVA en BATCH, JAVA sur CICS, JAVA sur WebSphere AS z/OS S’assurer de la « gestion de configuration » grer les procédures et outils d’exploitation Développer l’exploitation « UNIX » sur l’environnement Z (USS), S’assurer de l’intégration de l’ensemble des outils de production Ajouter des indicateurs dans la métrologie, Un axe stratégique m r plus loin avec Java sous CICS: [email protected] bSphere Liberty Profile Le conteneur web léger, donc JEE, de WebSphere AS 8.5.x DANS CICS • Capacités adaptées (ex: pas d’évolution inadaptée à la maîtrise requise par le rôle de CICS dans l’entreprise) • Vive le 2 tiers: Client>Servlet/JSP qui JCICS LINK !….au lieu de tout un tas de complexité • Vive la simplicité induite pas l’écosystème Java, ex: JAX-RS + JSON4J (ou autre Json fellow) eline AXIS2 pour les web services SOAP S TS Feature Pack for Mobile Extensions V1.0 Utilisation du pipeline Axis2 pour des web services REST ou RESTFul, JSON ou pas JSON to Langage Structure (ex: Cobol) et Langage Structure to JSON Démos, PoT sur ét Chez vous comme ch [email protected] S TS Feature Pack for Modern Batch V1.0, pour la modernization de vos (Java) Batch S TS Feature Pack for Dynamic Scripting V2.0 Support de PHP dans CICS Liberty dont JCICS (identique à sMash feature pack en CICS V4) pportPac CA1Y pour l’envoi de mails re moteur de règles zRules se décline en CICS S Value Unit Edition (VUE) Avantages financiers pour les nouveaux workload Java dans CICS (DB2 ou pas) lques liens… au bout de 45ans, on tient toujours la corde …et c’est sûr on s’attach quest for Enhancements, créez et votez pour pousser vos désirs ! http://www.ibm.com/developerworks/rfe/?BRAND_ID=181 CICS social media aggregator, ça bouge dans le CICS ! http://www.ibm.com/social/aggregator/cics GUIDE CICS, club d’utilisateurs du produit, le plus actif bien sûr, rejoignez nous ! http://www.gsefr.org/groupe-de-travail-cics nsieur Régis DAVID, gourou CICS, médium (1m78) Travail rapide et soigné, premières consultations offertes, [email protected] Spécialisé en: réduction de coûts, consolidation, design, connectivité, architecture, high-tech pragm bien sûr http://www.ibm.com/cics La Banque Postale vous remercie de votre attention ! IBM vous remercie de votre attention !