ホームページ  >  記事  >  PHPフレームワーク  >  ウールのプロセスは何ですか?

ウールのプロセスは何ですか?

尚
オリジナル
2019-12-25 15:35:042668ブラウズ

ウールのプロセスは何ですか?

いわゆるプロセスは、実際にはオペレーティング システムで実行されているプログラムです。プロセスの場合、そのコアの内容は 2 つの部分に分かれています。1 つはメモリであり、このメモリはこれですプロセスは作成時にシステムから割り当てられ、作成されるすべての変数はこのメモリ環境に保存されます。

スウール内のプロセス:

1. マスター プロセス: メイン プロセス

2. マネージャー プロセス: 管理プロセス

3 、ワーカー プロセス: 作業プロセス

4. タスク プロセス: 非同期タスクの作業プロセス

いくつかのプロセスの紹介:

1. マスター プロセス

これはswoole のメイン プロセス。このプロセスは swoole のコア イベントによって駆動されます。このプロセスでは、MainReactor [スレッド] といくつかの Reactor [スレッド] があることがわかります。すべての swoole のイベント監視はこれらのスレッドに実装されます。クライアントからの接続、信号処理など。

2. 管理プロセス マネージャー

最高のパフォーマンスを達成するには、Swoole はタスクの処理を支援する複数のワーカー プロセスを作成する必要がありますが、ワーカー プロセスは操作をフォークする必要がありますが、フォーク操作は安全ではありません。はい、管理が行われていない場合、多くのゾンビプロセスが発生し、サーバーのパフォーマンスに影響を与えると同時に、プログラム上の理由によりワーカープロセスが誤って終了したり、異常終了したりする可能性があります。サービスの安定性を確保するために、ワーカー プロセスを再作成する必要があります。

Swoole は運用中に別の管理プロセスを作成し、すべてのワーカー プロセスとタスク プロセスは管理プロセスからフォークされます。管理プロセスはすべての子プロセスの終了イベントを監視し、ワーカー プロセスで致命的なエラーが発生するか、実行中のライフサイクルが終了すると、管理プロセスはプロセスをリサイクルして新しいプロセスを作成します。

3. ワーカー プロセス

ワーカー プロセスは swoole のメイン論理プロセスに属し、ユーザーはクライアントからの一連のリクエストを処理し、Reactor スレッドによって配信されたリクエスト パケットを受け取り、 PHP コールバック関数を実行してデータを処理します。応答データが生成され、Reactor スレッドに送信されます。Reactor スレッドは、それを非同期非ブロッキング モードまたは同期ブロッキング モード

4 のいずれかで TCP クライアントに送信します。タスク プロセス

taskWorker プロセス Cheng は swoole が提供する非同期ワーカー プロセスであり、主に長期的な同期タスクを処理してワーカー プロセスに配信するために使用されます。

PHP 中国語 Web サイトには、無料の Swoole 入門チュートリアル が多数あり、誰でも学習することができます。

以上がウールのプロセスは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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