サーバーへのカール接続に30秒以上かかることを確認する方法は?

サーバーへのカール接続に30秒以上かかることを確認する方法は?

VPSサーバー(Ubuntu)と白いアドレスを持つWebカメラがあります。サーバーは10分ごとにカメラに新しいビデオを確認するように要求します。確認には、6つの要求(IP可用性確認、トークンインポート、パラメータ設定、データ受信、トークン停止、トークン削除)が含まれます。カール要求は次のとおりです。

curl_setopt_array($ch, [CURLOPT_USERPWD => 'admin:admin', 
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_TIMEOUT => 500,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_HTTPAUTH=>CURLAUTH_ANY
]);

今日、不明な理由で「10001ms後に接続がタイムアウトしました」というエラーが発生し始めました。手順6のいずれかでエラーが発生しました。実験のために、これらのクエリのうち100個のループを実行しました。そのうち49個に誤りがありました。

CONNECTTIMEOUTを30に増やしましたが、何の効果もありませんでした。 「30001ms後に接続がタイムアウトしました」というエラーが発生します。

Linuxタグは、問題がサーバー側にあると仮定しているためです。自宅のPCで同じ要求を実行すると、要求100個あたりエラーが0個発生するためです。カメラとPCは同じローカルネットワークにありません。しかし、私のサーバーIPで自分のPCのVPNを開くと、同じエラーが発生します。だから間違いなくサーバーに問題があるようです。

Rostelecom(カメラプロバイダ)は、これが自分のせいではなく、私の問題だと言いました。

これがtcpdumpが返すものです。https://pastebin.com/QGsEJDLw私は銃口に対してカールクエリを10回実行しました。そのうちエラー2件発生(処理時間10秒超)

接続時間が長くなる原因を見つける方法を教えてください。

ベストアンサー1

おすすめ記事