検索
ホームページPHPフレームワークWorkermanワーカーマンを複数のプロセスで実行できますか?

ワーカーマンを複数のプロセスで実行できますか?

#サーバーのマルチ CPU のパフォーマンスを最大限に活用するために、WorkerMan はデフォルトでマルチプロセスとマルチタスクをサポートします。

WorkerMan は、外部サービスを提供するためにメイン プロセスと複数のサブプロセスを開始します。メイン プロセスはサブプロセスの監視を担当します。サブプロセスは独立してネットワーク接続を監視し、データの送信と処理 シンプルなプロセス モデルにより、WorkerMan の安定性と効率性が向上します。 (推奨学習: workerman チュートリアル)

ワーカーマンを複数のプロセスで実行できますか?

メイン プロセス (デーモン プロセス) を作成します。開始すると、バックグラウンドで実行されます。ブラウザ ページをドロップします。

メイン スレッドは定期的にデータベース (MySQL) にクエリを実行します。条件を満たす URL が見つかると (複数ある場合があります)、

子プロセスも長期間存在する必要があり、データを取得するために URL に対応するサーバーを定期的にポーリングします。子プロセスは必要なデータを取得し、結果をデータベースに保存し、それ自体を終了します (またはメインプロセスによって閉じられます)。

#プロセス数を設定するための原則

1. 各プロセスが占有するメモリの合計は、総メモリよりも小さくする必要があります (一般的に、各ビジネス プロセスは約 40M のメモリを占有します))

2. IO の場合-集中的、つまりビジネスにブロッキング IO が含まれる場合 (Mysql、Redis、その他のストレージへの一般的なアクセスがアクセスをブロックしている場合)、CPU コア数を 3 倍に構成するなど、プロセス数を増やすことができます。

ビジネスに多くのブロックと待機が含まれる場合は、プロセスの数を適切に増やすことができます (たとえば、CPU コア数の 5 倍以上)。ノンブロッキング IO は IO 集中型ではなく、CPU 集中型であることに注意してください。

3. CPU 集中型の場合、つまり、ビジネスにブロッキング IO オーバーヘッドがない場合たとえば、ネットワーク リソースの読み取りに非同期 IO が使用され、プロセスがビジネスによってブロックされない場合コードでは、プロセス数を CPU コア番号と同じに設定できます

以上がワーカーマンを複数のプロセスで実行できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。