ホームページ >バックエンド開発 >PHPの問題 >PHPインターフェースのタイムアウトに対処する方法

PHPインターフェースのタイムアウトに対処する方法

(*-*)浩
(*-*)浩オリジナル
2019-09-25 11:15:363660ブラウズ

一般に、私たちはさまざまな方法で HTTP にアクセスします。主に、curl、socket、file_get_contents() およびその他のメソッドです。

相手のサーバーが応答しなければ悲劇が起こり、サーバー全体を殺すことも簡単なので、http アクセス時のタイムアウトの問題も考慮する必要があります。

PHPインターフェースのタイムアウトに対処する方法

[CURL アクセス HTTP]

CURL は、HTTP プロトコル インターフェイスにアクセスするために一般的に使用される比較的信頼性の高いライブラリ ライブラリです。 、高パフォーマンス、およびいくつかの同時実行サポート機能。 (推奨学習: PHP プログラミングの入門から習熟まで )

cURL 拡張機能を使用してタイムアウト制御を処理しましょう

より正確に処理したい場合タイムアウトには、接続タイムアウトと読み取りタイムアウトを設定できる cURL 拡張機能 (CURLOPT_TIMEOUTCURLOPT_CONNECTTIMEOUT) を使用します。

HTTP インターフェイスがミリ秒レベルで返す必要があるかどうかを制御する場合は、CURLOPT_TIMEOUT_MS 定数と CURLOPT_CONNECTTIMEOUT_M 定数を使用することもできます。

これら 2 つの定数を使用する場合は、curl_setopt($ch, CURLOPT_NOSIGNAL, 1) を設定する必要があることに注意してください。

魔法はここにあります。cURL です。拡張メカニズムは非常に優れており、指定された読み取り時間に取得されたすべてのデータが返され、その後呼び出しが終了し、プログラムはエラーを報告しません。 #rreee

以上がPHPインターフェースのタイムアウトに対処する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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