私は、6,300 ほどのサイトをチェックして、それぞれに HTTP 要求を送信し、応答を測定することによって、サイトが稼働していることを確認する Python スクリプトを使用しています。現在、スクリプトを完全に実行するには約 40 分かかります。スクリプトを高速化する他の方法に興味がありました。2 つの考えは、スレッド化または複数の実行インスタンスのいずれかでした。
これが現在の実行順序です。
- スキャンするすべてのアクティブなドメインを取得するための MySQL クエリ (6,300 ギブ オア テイク)
- 各ドメインを反復処理し、urllib を使用して HTTP リクエストを各ドメインに送信します
- サイトが「200」を返さない場合は、結果をログに記録します
- 完了するまで繰り返す
これは、スレッド化で大幅に高速化できるように思えますが、スレッド化に慣れていないため、そのプロセスフローがどのように見えるかはよくわかりません。
誰かがサンプルの高レベル プロセス フローとスレッドを操作するためのその他の指針を提供できるか、スクリプト全般を改善する方法について他の洞察を提供できれば幸いです。