Les coulisses »

Zend - The PHP Company

Zend Platform Job Queues en détail

Additional Products:
Zend Core |
Zend Studio |
Zend Guard

Job Queues est une approche qui rationnalise le traitement offline de scripts PHP. Le serveur Job Queues permet de ré-router et de retarder l’exécution de scripts PHP qui ne sont pas essentiels pendant l’interaction des utilisateurs avec le serveur Web. Job Queues améliore le temps de réponse pendant les sessions web interactives et se sert des ressources inutilisées.

Chaque serveur dans un cluster peut contenir une file d’attente (Queue) qui sert de conteneur pour vos jobs. On peut visualiser le statut d’une file d’attente en termes de nombre de Jobs accomplis, du nombre de Jobs échoués, du nombre de jobs récurrents, du nombre de jobs qui ont une dépendance, etc. Par ailleurs, les statistiques concernant les jobs sont affichées aussi, tels que le temps moyen d’attente, le nombre de jobs demandé, etc. Il est aussi possible de suspendre ou de reprendre une file d’attente pour l’empêcher ainsi d’exécuter de nouveaux jobs qui viennent d’y entrer.

Ajouter un nouveau job est simple et intuitif et se fait dans l’interface utilisateur. Il est également possible de régler la priorité du job, le nom de l’application et le fichier script à exécuter. On peut rendre un job dépendent d’un autre job et régler les données de sa programmation –le job peut être exécuté immédiatement ou à tout autre moment déterminé. De plus, le job peut être récurrent et peut s’exécuter indéfiniment.

La fonctionnalité Job Queues a une API entièrement programmable qui permet l’exécution de toutes ses fonctionnalités.

Zend Platform Job Queues
         Voir la capture d'écran



Comment fonctionne Job Queues :

Dès l’activation de la fonctionnalité Job Queues, le Service Job Queues s’exécute sur chaque serveur du cluster. Le Service Job Queues sert d’unité d’exécution derrière la fonction Job Queues. Lors de l’ajout d’un nouveau Job dans une file d’attente, ses attributs (nom, niveau de priorité, identité d’application, etc.), sa dépendance et les données concernant sa programmation sont stockés dans la base de données de Zend Platform. Chaque job est aussi inséré dans la file d’attente qui est le conteneur logique pour le job. Le Service Job Queues est responsable de la mise à jour du statut de chaque job et doit vérifier si le statut d’un job nécessite des opérations additionnelles telles que « Job execution ». Par exemple, au moment de l’exécution d’un job ou si ses conditions de dépendance sont satisfaites (ex : un autre job a été exécuté) alors le Service exécute le job. C'est-à-dire qu'il exécute le script PHP associé avec le job. Il récupère la sortie standard de l’exécution du job. Il est possible de configurer les jobs et les files d’attente à travers tous les clusters grâce à la communication bidirectionnelle du Service des Job Queues avec l’interface utilisateur Job Queues située sur le serveur central. White Paper: Scalability and Responsiveness with Zend Platform's Job Queue

Retour à la page des fonctions