ホームページ >バックエンド開発 >PHPチュートリアル >ubuntuでバックグラウンドphpサービスを実行する方法の詳細な説明

ubuntuでバックグラウンドphpサービスを実行する方法の詳細な説明

小云云
小云云オリジナル
2018-03-10 13:51:053179ブラウズ


mqtt およびその他の通信レコードを取得してデータベースに保存する php サービス スクリプトを作成します。通常、サーバー側でターミナルを開いてコードを実行してデータをキャプチャするだけで済みますが、ターミナルを閉じるとデータをキャプチャできなくなります。デーモンは、常にバックグラウンドで実行されているプロセスです。ターミナルなしでバックグラウンドで独立して実行できます。

フォアグラウンドタスクとバックグラウンドタスク

1. ubuntuでは、通常は次のコードをサービススクリプトとして実行します。

php run.php

こうすることで、単一の端末で実行できます。しかし、ターミナルを使って他のことをすることはできません。

2. 次のように、コマンドの最後に & を追加します。

php run.php &

コマンドの最後に & 記号を追加する限り、開始されたプロセスは「バックグラウンド タスク」になります。実行中の「フォアグラウンド タスク」を「バックグラウンド タスク」に変更する場合は、最初に Ctrl + Z を押してから、bg コマンドを実行します (最後に一時停止した「バックグラウンド タスク」の実行を継続するため)。 fg と入力して Enter キーを押して通常モードに切り替えることもできます。

「バックグラウンドタスク」には2つの機能があります:
現在のセッション (会話) の標準出力 (stdout) と標準エラー (stderr) を継承します。したがって、バックグラウンド タスクのすべての出力は引き続きコマンド ラインに同期して表示されます。
現在のセッションの標準入力 (stdin) は継承されなくなります。このミッションではコマンドを入力できなくなります。標準入力を読み取ろうとすると、実行は停止します。
ご覧のとおり、「バックグラウンド タスク」と「フォアグラウンド タスク」の本質的な違いは 1 つだけです。それは、標準入力を継承するかどうかです。したがって、ユーザーはバックグラウンド タスクを実行しながら、他のコマンドを入力することもできます。

tail -fn 50 nohup.out

関連する推奨事項:

Ubuntu で PHP5 を PHP7.0 にアップグレードする

ubuntu に php5.6.32 をインストールして、php 環境のセットアップ方法を完了します

PHPを構築するubuntu 開発環境サンプルチュートリアル

以上がubuntuでバックグラウンドphpサービスを実行する方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。