Maison développement back-end tutoriel php QPM-PHP多进程开发-Supervisor配置参考

QPM-PHP多进程开发-Supervisor配置参考

Aug 08, 2016 am 09:29 AM
config supervisor

QPM 是一个PHP 进程管理框架,可用于简化Daemon开发,项目地址在:https://github.com/Comos/qpm
截至0.2版本,QPM支持3种Supervison模式,OneForOne MultiGroupOneForOne 和 TaskFactoryMode。 不同的模式可以建立起不同的进程树组合,子进程的重启,并发控制的策略都各不相同,以适应不同的应用场景。 不同的模式对应着不同的工厂方法,例如OneForOne的创建方法是 qpm\supervisor\Supervisor::oneForOne($config);OneForOne方法qpm\supervisor\Supervisor::oneForOne($config)使用场景所有的子进程都使用同一个回调函数或Runnable类。配置字段
  • *runnableCallback 或 runnableClass. 类型 callable 或 qpm\process\Runnable runnableCallback是在子进程执行实际任务的回调。runnableClass在子进程种执行实际任务的类,和runnableCallback二选一。

  • quantity 类型 integer 默认1 并发数量。

  • maxRestartTimes 类型 integer 最大重启次数, 和withInSeconds配合使用。
  • withInSeconds 类型 integer 和maxRestartTimes,指示master进程在约定的时间内最大的重启次数。
  • 例子1 'justDoIt', 'quantity' => 3]; $sup = qpm\supervisor\Supervisor::oneForOne($config); $sup->start(); 例子2 'Foo', 'quantity' => 5, 'maxRestartTimes'=>100, 'withInSeconds'=>10]; $sup = qpm\supervisor\Supervisor::oneForOne($config); $sup->start(); MultiGroupOneForOne方法qpm\supervisor\Supervisor::oneForOne($config)使用场景MultiGroupOneForOne是OneForOne的升级版,可管理多组OneForOne的进程。 MultiGroupOneForOne的配置是一个内嵌了若干OneForOne配置的数组。TaskFactoryMode任务工厂模式,任务由指定的工厂方法产生。方法qpm\supervisor\Supervisor::taskFactoryMode($config)使用场景每次子进程执行的任务各不相同,须要不同的参数、类或Run函数,因此每次的任务都由任务工厂生成。配置字段*factoryMethod callable 用于生成任务对象 或 callable的工厂方法。 factoryMethod 返回值可以是 qpm\process\Runnable 或 callable
  • quantity 类型 integer 默认1 并发数量。

  • 截至0.2版本,QPM支持3种Supervison模式,OneForOne MultiGroupOneForOne 和 TaskFactoryMode。 不同的模式可以建立起不同的进程树组合,子进程的重启,并发控制的策略都各不相同,以适应不同的应用场景。 不同的模式对应着不同的工厂方法,例如OneForOne的创建方法是 qpm\supervisor\Supervisor::oneForOne($config);OneForOne方法qpm\supervisor\Supervisor::oneForOne($config)使用场景所有的子进程都使用同一个回调函数或Runnable类。配置字段
  • *runnableCallback 或 runnableClass. 类型 callable 或 qpm\process\Runnable runnableCallback是在子进程执行实际任务的回调。runnableClass在子进程种执行实际任务的类,和runnableCallback二选一。

  • quantity 类型 integer 默认1 并发数量。

  • maxRestartTimes 类型 integer 最大重启次数, 和withInSeconds配合使用。
  • withInSeconds 类型 integer 和maxRestartTimes,指示master进程在约定的时间内最大的重启次数。
  • 例子1 'justDoIt', 'quantity' => 3]; $sup = qpm\supervisor\Supervisor::oneForOne($config); $sup->start(); 例子2 'Foo', 'quantity' => 5, 'maxRestartTimes'=>100, 'withInSeconds'=>10]; $sup = qpm\supervisor\Supervisor::oneForOne($config); $sup->start(); MultiGroupOneForOne方法qpm\supervisor\Supervisor::oneForOne($config)使用场景MultiGroupOneForOne是OneForOne的升级版,可管理多组OneForOne的进程。 MultiGroupOneForOne的配置是一个内嵌了若干OneForOne配置的数组。TaskFactoryMode任务工厂模式,任务由指定的工厂方法产生。方法qpm\supervisor\Supervisor::taskFactoryMode($config)使用场景每次子进程执行的任务各不相同,须要不同的参数、类或Run函数,因此每次的任务都由任务工厂生成。配置字段*factoryMethod callable 用于生成任务对象 或 callable的工厂方法。 factoryMethod 返回值可以是 qpm\process\Runnable 或 callable
  • quantity 类型 integer 默认1 并发数量。
  • 以上就介绍了QPM-PHP多进程开发-Supervisor配置参考,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

    Déclaration de ce site Web
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

    Outils d'IA chauds

    Undresser.AI Undress

    Undresser.AI Undress

    Application basée sur l'IA pour créer des photos de nu réalistes

    AI Clothes Remover

    AI Clothes Remover

    Outil d'IA en ligne pour supprimer les vêtements des photos.

    Undress AI Tool

    Undress AI Tool

    Images de déshabillage gratuites

    Clothoff.io

    Clothoff.io

    Dissolvant de vêtements AI

    Video Face Swap

    Video Face Swap

    Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

    Outils chauds

    Bloc-notes++7.3.1

    Bloc-notes++7.3.1

    Éditeur de code facile à utiliser et gratuit

    SublimeText3 version chinoise

    SublimeText3 version chinoise

    Version chinoise, très simple à utiliser

    Envoyer Studio 13.0.1

    Envoyer Studio 13.0.1

    Puissant environnement de développement intégré PHP

    Dreamweaver CS6

    Dreamweaver CS6

    Outils de développement Web visuel

    SublimeText3 version Mac

    SublimeText3 version Mac

    Logiciel d'édition de code au niveau de Dieu (SublimeText3)

    Comment corriger l'erreur 0xC00CE556 renvoyée par l'analyseur .NET Comment corriger l'erreur 0xC00CE556 renvoyée par l'analyseur .NET Apr 25, 2023 am 08:34 AM

    Lors de l'installation d'une nouvelle version d'une application, Windows peut afficher ce message d'erreur « Une erreur s'est produite lors de l'analyse de C:\\Windows\Microsoft.Net\Framework\v2.0.50727\Config\machine.configParser a renvoyé l'erreur 0xC00CE556 ». Ce problème se produit également au démarrage de votre système. Quelle que soit la situation dans laquelle vous rencontrez ce problème, .NETFramework est le véritable coupable en coulisses. Il existe des correctifs très simples que vous pouvez utiliser pour empêcher ce code d'erreur de réapparaître. Correctif 1 – Remplacer les fichiers corrompus Vous pouvez facilement remplacer le ma corrompu à partir du répertoire d'origine

    Bibliothèque de gestion de processus en PHP8.0 : Superviseur Bibliothèque de gestion de processus en PHP8.0 : Superviseur May 14, 2023 am 08:28 AM

    Avec le développement continu du langage PHP, de plus en plus de fonctions et de bibliothèques sont introduites dans la boîte à outils du développeur. L'une des fonctions importantes est la gestion des processus. Dans la version PHP8.0, Supervisor est une bibliothèque de gestion de processus très puissante, qui peut nous aider à démarrer, arrêter, surveiller et redémarrer facilement des processus, et à maintenir le fonctionnement stable du processus. Qu'est-ce qu'un superviseur ? Supervisor est un outil de gestion de processus écrit en Python qui vous permet de démarrer, d'arrêter et de surveiller facilement

    Comment utiliser Supervisor pour gérer la file d'attente ThinkPHP6 ? Comment utiliser Supervisor pour gérer la file d'attente ThinkPHP6 ? Jun 12, 2023 am 08:51 AM

    À mesure que les applications Web continuent de se développer, nous devons gérer un grand nombre de tâches pour maintenir la stabilité et la disponibilité de l'application. Utiliser un système de file d’attente est une solution. ThinkPHP6 fournit un système de file d'attente intégré pour gérer les tâches. Cependant, gérer un grand nombre de tâches nécessite une meilleure gestion des files d'attente, ce qui peut être réalisé à l'aide de Supervisor. Cet article explique comment utiliser Supervisor pour gérer les files d'attente ThinkPHP6. Avant cela, nous devons comprendre quelques concepts de base : le système de file d'attente est

    Comment utiliser ThinkPHP\Config pour la gestion de la configuration en php ? Comment utiliser ThinkPHP\Config pour la gestion de la configuration en php ? May 31, 2023 pm 02:31 PM

    Avec le développement continu du langage PHP, ThinkPHP, largement utilisé dans le framework back-end PHP, s'améliore également constamment. À mesure que les scénarios commerciaux deviennent de plus en plus complexes, la demande en matière de gestion de configuration dans ThinkPHP augmente également. Dans ce contexte, ThinkPHP fournit de riches fonctions de gestion de configuration. Aujourd'hui, nous allons présenter comment implémenter la gestion de configuration via ThinkPHPConfig. 1. Introduction à ThinkPHPConfig ThinkPHPConfig est léger

    Comment PHP utilise-t-il CodeIgniter\Config pour la gestion de la configuration ? Comment PHP utilise-t-il CodeIgniter\Config pour la gestion de la configuration ? Jun 02, 2023 pm 06:01 PM

    1. Introduction à CodeIgniter CodeIgniter est un framework de développement PHP léger et complet conçu pour fournir aux développeurs Web des outils rapides et puissants pour créer des applications Web. Il s'agit d'un framework open source qui utilise le modèle d'architecture MVC pour réaliser un développement rapide et des fonctions de base, tout en prenant en charge une variété de bases de données. 2. Introduction à la bibliothèque Config La bibliothèque Config est un composant du framework CodeIgniter et est utilisée pour configurer et gérer le code. La bibliothèque Config contient de nombreux

    Comment créer un environnement .NET Core2.0+Nginx+Supervisor sous le système Centos7 Comment créer un environnement .NET Core2.0+Nginx+Supervisor sous le système Centos7 May 12, 2023 pm 08:13 PM

    1. Introduction à linux.netcore. Pendant longtemps, Microsoft n'a fourni le support .net que pour sa propre plate-forme. Cela signifie que le support de ce framework multiplateforme « théoriquement » sur Linux et macos ne peut être fourni que par des tiers. projets (tels que mono. net). Jusqu'à ce que Microsoft lance .netcore, qui est entièrement open source. Cette plateforme open source est compatible avec .netstandard et fournit des API totalement cohérentes sur Windows, Linux et Macos. Bien que ce framework .net compact ne soit qu’un sous-ensemble du .net standard, il est déjà assez puissant. D'une part, ce petit framework permet à certaines applications fonctionnelles de fonctionner sur trois plateformes en même temps (tout comme certaines applications fonctionnelles).

    Développement Laravel : Comment gérer les tâches asynchrones à l'aide de Laravel Queues et Supervisor ? Développement Laravel : Comment gérer les tâches asynchrones à l'aide de Laravel Queues et Supervisor ? Jun 13, 2023 pm 04:04 PM

    Développement Laravel : Comment gérer les tâches asynchrones à l'aide de LaravelQueues et Supervisor ? Dans les applications Web modernes, les tâches asynchrones font désormais partie intégrante des activités quotidiennes. Les tâches asynchrones peuvent améliorer le temps de réponse des applications, optimiser l'expérience utilisateur et améliorer l'évolutivité des applications. LaravelQueues est un outil puissant fourni par le framework Laravel pour gérer les tâches asynchrones et les files d'attente de messages. Cet article présentera LaravelQue

    Comment utiliser Supervisor pour gérer les conteneurs Nginx et Tomcat Comment utiliser Supervisor pour gérer les conteneurs Nginx et Tomcat May 12, 2023 pm 02:10 PM

    Exigences : utilisez Docker pour démarrer les processus doubles nginx+tomcat. Dans les applications réelles, plusieurs processus sont relativement courants. 1 : Créez le répertoire dockerfile mkdir-p/docker/web2 : Écrivez dockerfile:/docker/web/dockerfilefromcentos7maintainerlintest@163.comcopycentos-base.repo/etc/yum.repos.d/centos-base.repocopynginx_install.sh/tmp/nginx_install .shru

    See all articles