TP
Définition du TP
TP est l'acronyme en anglais de Transaction Processing. Il désigne l'ensemble du système de traitement des transactions qui sont envoyées au système central en temps réel.
Contrairement au batch qui est le traitement par lots et qui
fonctionne en différé sur le principe de files
d'attentes de jobs qui sont enchaînés les uns
à la suite des autres, le TP fonctionne en temps
réel pour prendre en charge les requêtes qui sont
envoyées au host et renvoyer la réponse du
serveur en quelques dixièmes de secondes.
Le batch est adapté pour traiter de gros volumes
d'information et appliquer à chaque enregistrement d'un
fichier le même traitement informatique. Le TP est, lui,
optimisé pour ne traiter qu'une seule demande à
la fois. On appelle cette demande une transaction. Bien que le TP ne
traite qu'une transaction à un instant t, il est capable de
recevoir de très nombreuses transactions au même
instant. Il est donc nécessaire de disposer d'un moteur
de gestion des transactions et c'est en
général CICS qui gère cet aspect sur
les mainframes IBM.
Dissociation entre technique et fonctionnel
La meilleure façon de gérer les transactions TP est de dissocier la couche d'accueil de la couche purement métier. La couche d'accueil permet de prendre en charge l'arrivée de chaque transaction, de vérifier la cohérence des informations fournies, de renvoyer un message d'erreur en cas malformation de la requête, de contrôler les authentifications d'accès et de transmettre la requête à la couche métier. La couche d'accueil du CICS ne doit normalement pas accéder aux données fonctionnelles. Les contrôles de cohérence se font uniquement sur des notions de présense ou non d'information obligatoire et de numéricité. C'est une couche purement technique.
La couche métier, quant à elle, accède aux bases de données fonctionnelles et effectue les traitements associés à la requête. Cette transaction s'exécute dans un autre CICS afin de ne pas surcharger les CICS d'accueil qui doivent toujours se montrer disponibles afin d'assurer la prise en charge de chaque transaction entrante. Outre le fait de la haute disponibilité que doivent avoir les CICS d'accueil, l'exécution des traitements fonctionnels étant réalisées dans un autre système apporte la garantie qu'en cas de bug qui conduirait à faire tomber le CICS sur lequel s'exécutent ces traitements, le CICS d'accueil ne serait pas affecté et pourrait continuer à jouer son rôle de prise en charge des requêtes entrantes.
Quand les traitements fonctionnels sont terminés, une réponse est renvoyée au CICS d'accueil qui la transmet au terminal qui est à l'origine de la transaction. Le CICS d'accueil joue donc un rôle de « passe-plats ».