オンラインマシンでは、アクセスログをフィルタリングして別のAPIに送信する必要があります。
最初は単一プロセスであったため、マルチプロセス送信に切り替えた後、時々異常なエラーが発生しました。ログ (スクリーンショットを撮るのを忘れました...)
要するに、ポートが不十分でエラーが報告されます
すべてのログは API に送信されるリクエストであり、接続が短いと大量の time_wait ステータスが生成されます。多くのポートを占有します
この高い同時実行性により、time_wait ステータスのカーネル調整が大量に行われます。基本的に役に立たないため、問題を解決するために後で長い接続に変更されました
特定のビジネス情報を含むため、コードの重要な部分のみを掲載します
import pycurl where True: url=myqueue.get() send_msg=pycurl.Curl() send_msg.setopt(pycurl.URL,url) send_msg.perform() print send_msg.getinfo(send_msg.HTTP_CODE)
リクエストライブラリの使用
import requests client=requests.session() headers = {'Content-Type': 'application/json', 'Connection': 'keep-alive'} where True: url=myqueue.get() r=client.get(url,headers=headers) print r.status_code
以上がPython http 長い接続クライアントのサンプル チュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。