Maison > développement back-end > tutoriel php > Explication détaillée de l'exécution du service PHP en arrière-plan sur Ubuntu

Explication détaillée de l'exécution du service PHP en arrière-plan sur Ubuntu

小云云
Libérer: 2023-03-21 08:06:01
original
3156 Les gens l'ont consulté


Créez un script de service php, chargé de récupérer mqtt et d'autres enregistrements de communication et de les enregistrer dans la base de données. Normalement, il suffit d'ouvrir un terminal côté serveur pour exécuter le code et capturer les données. Cependant, après la fermeture du terminal, nous ne pouvons pas capturer de données. Un démon est un processus qui s'exécute toujours en arrière-plan. Il peut s'exécuter en arrière-plan indépendamment du terminal.

Tâches de premier plan et tâches d'arrière-plan

1 Sur Ubuntu, la pratique habituelle consiste à exécuter le code suivant en tant que script de service.

php run.php
Copier après la connexion

De cette façon, vous pouvez le faire fonctionner en occupant seul un terminal. Mais je ne peux pas utiliser le terminal pour faire autre chose.

2. On ajoute & à la fin de la commande, comme suit :

php run.php &
Copier après la connexion

Tant que vous ajoutez le symbole & à la fin de la commande, le processus démarré deviendra une « tâche de fond ». Si vous souhaitez modifier la « tâche de premier plan » en cours d'exécution en « tâche d'arrière-plan », vous pouvez d'abord appuyer sur ctrl + z, puis exécuter la commande bg (pour continuer l'exécution de la « tâche d'arrière-plan » la plus récemment suspendue). Vous pouvez également saisir fg et appuyer sur Entrée pour passer en mode normal.

Les « tâches en arrière-plan » ont deux caractéristiques :
Hérite de la sortie standard (stdout) et de l'erreur standard (stderr) de la session en cours (conversation). Par conséquent, toutes les sorties des tâches en arrière-plan seront toujours affichées de manière synchrone sur la ligne de commande.
L'entrée standard (stdin) de la session en cours n'est plus héritée. Vous ne pouvez plus saisir de commandes pour cette mission. S'il tente de lire l'entrée standard, l'exécution s'arrêtera.
Comme vous pouvez le constater, il n'y a qu'une seule différence essentielle entre les « tâches d'arrière-plan » et les « tâches de premier plan » : hériter ou non de l'entrée standard. Par conséquent, tout en effectuant des tâches en arrière-plan, l'utilisateur peut également saisir d'autres commandes.

tail -fn 50 nohup.out

Recommandations associées :

Ubuntu met à niveau PHP5 vers PHP7.0

Installez php5.6.32 sous ubuntu pour compléter la méthode de configuration de l'environnement php

À propos du tutoriel sur la configuration de l'environnement de développement php sur ubuntu

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal