http - 以编程方式发出请求时要使用的合理 HTTP POST 超时值?

标签 http post timeout

当以编程方式发出 HTTP POST 请求时,什么超时值是合理的?

在我的例子中,我希望在用 PHP 发出 POST 请求时设置“合理的”超时值,但这适用于任何语言。

我需要能够发出一组请求,每个请求发送到一个用户指定的 URL。如果我确实需要连续而不是同时处理请求,我想指定一个合理的时间,超过该时间请求将被视为超时。

PHP 的 default socket timeout是 60 秒。在决定不完成请求之前等待的时间似乎不必要地长。

由于这些是 POST 请求,因此它们应该可以快速完成 - 没有像 GET 请求那样需要检索和返回的数据。

我们应该能够假设,大多数时间,未能在 X 秒内对请求发出响应意味着主机不太可能在合理的时间内对值发出响应X 显着小于 60。

当然,主机响应一个简单的 POST 请求的时间很少超过 60 秒。他们甚至很少花费超过 10 秒的时间吗? 5 秒?

在实践中 X 的合理值是多少?伴随建议的理由将非常有益。

最佳答案

我建议设置一个测试,因为涉及的因素太多,无法给出一个始终合理的值。

POST 请求发送要处理的数据。处理需要多长时间?这将是特定于应用程序/数据的。

楼主在哪里?用户正在提供 URL,因此这将是未知的。我们无法知道您的应用程序和主机之间的流量情况。我们无法知道主机的服务器负载。

本质上,没有通用的合理超时。您必须根据自己的具体需求做出自己的最佳判断。设置测试并使用它来确定您的限制。

关于http - 以编程方式发出请求时要使用的合理 HTTP POST 超时值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/171099/

相关文章:

php - $_POST 不在数据库中插入值

javascript - jquery语法错误

rest - 504 网关超时 Spring Boot

PHP Fire and Forget POST 请求

PHP - 通过 POST 重定向和发送数据

http - Varnish Via 和 X-Varnish header : are they needed in production?

java - 微服务架构 |无法分配请求的地址

java - Spring REST - 在更长的空闲时间之后,第一次调用需要很长时间(5-10 秒)

java - Musicbrainz 查询区分大小写吗?

http - 如何在 C 中通过 HTTP 协议(protocol)发送图像?