Présentation de Java Batch et du support par lots géré

La fonction Java Batch étend le serveur d'applications pour accepter les applications qui doivent effectuer des travaux par lots avec des applications transactionnelles. Le travail par lots peut nécessiter des heures, voire des jours, pour être finalisé et consomme une grande quantité de mémoire ou de puissance de traitement.

Une demande individuelle peut être exécutée avec un temps processeur en secondes et une mémoire relativement faible. De nombreuses applications, toutefois, doivent exécuter des travaux par lots nécessitant de nombreux calculs et gourmands en ressources.

Liberty prend en charge les fonctions de traitement par lots suivantes:
  • Java Batch

    La fonction batch-1.0 permet d'utiliser le modèle de programmation JSR-352.

  • Support par lots géré
    La fonction batchManagement-1.0 fournit les fonctionnalités suivantes :
    • Une interface REST pour la soumission de travail à distance
    • L'utilitaire de ligne de commande batchManager
    • La prise en charge de la consignation de travaux
    • La prise en charge de plusieurs serveurs à l'aide de JMS
Remarque: la fonction batchManagement-1.0 active également la fonction batch-1.0 .

Arrêt et reprise de Java Batch

Java Batch se comporte différemment lorsque le serveur est arrêté alors que des travaux sont encore en cours d'exécution.

Java Batch est désactivé lorsque le serveur est arrêté ou lorsque la fonction Java Batch est supprimée. Il est également désactivé et réactivé pour le traitement d'une mise à jour de configuration dynamique. La désactivation de Java Batch entraîne l'émission de demandes d'arrêt vers tous les travaux actifs et la consignation de messages pour chaque arrêt. Un délai de 2 secondes est nécessaire pour l'arrêt des travaux. Si au bout de 2 secondes des travaux Java Batch sont encore en cours d'exécution, un message est consigné afin d'indiquer les ID d'exécution de travaux qui sont encore actifs. Ensuite, Java Batch s'arrête. Si des travaux sont toujours en cours d'exécution après l'arrêt de Java Batch, leur comportement peut être imprévisible.

Important: Si le serveur est arrêté de manière inattendue, Java Batch est restauré en marquant tous les travaux qui étaient en cours d'exécution sur le serveur mais qui ne sont pas terminés comme n'ayant pas abouti lorsque le serveur est redémarré.