1. はじめにスレッドとプロセスの間では、プロセスの方が安定しており、複数のマシンに分散できるため、プロセスの方が優先されます。一方、スレッドは、最大で同じマシン上の複数の CPU にしか分散できません。 Python の multiprocessing モジュールは複数のプロセスをサポートするだけでなく、そのマネージャー サブモジュールは複数のプロセスを複数のマシンに分散することもサポートします。サービス プロセスをスケジューラとして記述し、タスクを複数の他のプロセスに分散し、ネットワーク通信を通じて管理することができます。 2. 事例分析クローラー プログラムを実行すると、Web サイトのすべての画像がキャプチャされます。複数のプロセスが使用される場合、通常、1 つのプロセスが画像のリンク アドレスをキャプチャしてキューにリンク アドレスを配置する役割を担い、別のプロセスがキューからリンク アドレスを取得してダウンロードし、ローカルに保存する役割を担います。 分散プロセスでそれを実装するにはどうすればよいでしょうか?一方のマシン上のプロセスはリンク アドレスを取得する役割を担い、もう一方のマシン上のプロセスはそれを保存する役割を担います。主な問題は、他のマシン プロセスがアクセスできるようにキューをネットワークに公開することです。分散プロセスはこのプロセスをカプセル化します。これは、ローカル キューのネットワーク化と呼ぶことができます。 例: 1.py
サーバーに接続し、ポートと認証パスワードがサーバー プロセスのものとまったく同じであることを確認します。ネットワークからキューを取得し、ローカライズし、タスク キューからタスクを取得して、結果を結果キューに書き込みます。 2.py
タスク プロセスはネットワーク経由でサービス プロセスに接続する必要があるため、サービス プロセスの IP を指定する必要があります。 結果は次のとおりです。画像のアドレスを取得し、2.py に渡します。 1.py で渡されたアドレスを受け取り、画像をダウンロードすると、コンソールにクロール結果が表示されます。 結論この記事は Python に基づいています。 Python の分散プロセス インターフェースはシンプルで適切にカプセル化されており、負荷の高いタスクを複数のマシンに分散する必要がある環境に適しています。キューの役割はタスクを転送し、結果を受け取ることであると説明します。 皆さんも積極的に挑戦してみてください。他の人がやっているのを見ると簡単に実装できることもありますが、自分で実装しようとすると、さまざまな問題が必ず発生します。あまり野心的になりすぎず、熱心に取り組んで、より深く理解できるようにしてください。 |
<<: Daoentropy 分散ストレージが PACS ストレージとしてより適している理由は何ですか?
プロモーション期間中にトラフィックを有効活用し、ユーザーが購入したトラフィックの価値を最大化するには...
クラウド災害復旧市場は成長しており、各ベンダーが異なるレベルのサービスとサポートを提供しています。サ...
今や SEO は特別な秘密でも、神秘的なものでもありません。SEO チュートリアルはどこにでもありま...
漏洩したパスワード検索サイトへのアクセスが一夜にして急増パスワードが漏洩した場合、QQアカウントのロ...
4月2日の午後、クラウドコンピューティングは間違いなく現在のインターネット業界でホットな話題と見なさ...
アリババが社内で明らかにしたデータによると、同社が宣伝しているモバイルIMアプリケーション「莱旺」は...
テンセントテクノロジーニュース(朱旭東)は9月17日、アリペイが本日、中国初のインターネット商店セキ...
昨日、私はSotu.comサロンに出席し、王同教授の見解を聞きました。彼が挙げた例の一つは、百度で趙...
多くの人が「クローズドループは誤った命題だ」と話すとき、多くの本当の業界関係者は「ははは」と反応する...
2018年に中国のインターネットはどこに向かうのでしょうか?明らかに、今年はインターネット業界全体に...
ウェブマスターとして、私も間違いを犯すでしょうし、あなたも間違いを犯すでしょうし、私たちは皆間違いを...
インターネット時代の後半に入り、多くの業界関係者は周鴻一に対する懐かしさをますます表明し、「エコ反撃...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスWeChatが使われるよ...
これは少し見出しっぽいですが、コンテナ イメージは単なる組織の rootfs であるというのは本当で...
この記事の目的は、香港のクラウド サーバーを推奨することです。香港のクラウド サーバーの利点は、速度...