gpt4 book ai didi

java - RESTful : What is the difference between ClientProperties. CONNECT_TIMEOUT 和 ClientProperties.READ_TIMEOUT 在 Jersey ?

转载 作者:行者123 更新时间:2023-11-30 08:00:00 24 4
gpt4 key购买 nike

为了在进行 REST 调用时设置超时,我们应该指定这两个参数,但我不确定为什么要同时指定这两个参数以及它们究竟有什么不同的用途。另外,如果我们只设置其中一个或两个设置不同的值怎么办?

最佳答案

CONNECT_TIMEOUT 是等待建立与主机连接的时间量。连接后,READ_TIMEOUT 是服务器响应给定请求中的所有内容所允许的时间量。

如何设置其中一个取决于您的要求,但它们可以是不同的值。 CONNECT_TIMEOUT 不应要求很大的值,因为它只是与服务器建立套接字连接所需的时间。 30 秒应该是足够的时间 - 坦率地说,如果它没有在 10 秒内完成,那就太长了,而且服务器很可能被淹没,或者至少是重载。

READ_TIMEOUT - 这可能会更长,特别是如果您知道您请求的操作/资源需要很长时间才能处理。您可以将其设置为 60 秒,甚至几分钟。同样,这取决于您等待流程完成确认的重要性,并且您将根据系统需要多快的响应速度来权衡这一点。如果您的客户端在等待进程完成时超时,这并不一定意味着该进程已停止,它可能会继续运行直到它在服务器上完成(或者至少,直到达到服务器超时)。

如果这些调用直接驱动接口(interface),那么您可能需要更短的时间,因为您的用户可能没有耐心等待这样的延迟。如果在后台或批处理过程中调用它,则可以接受更长的时间。这取决于你。

关于java - RESTful : What is the difference between ClientProperties. CONNECT_TIMEOUT 和 ClientProperties.READ_TIMEOUT 在 Jersey ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38854048/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com