【问题标题】:Impact of grizzly.writeTimeout in file downloadgrizzly.writeTimeout 对文件下载的影响
【发布时间】:2013-11-24 08:00:24
【问题描述】:

我正在开发一个基于 JSF 的 Web 应用程序,它为用户提供打开/保存对话框以下载 XML 文件。如果用户在打开/保存对话框出现后立即单击打开/保存,则文件已完全下载。但如果有超过 90 秒的延迟,则文件要么没有下载,要么下载的内容不完整。 (Incomplete file download when waiting minutes before clicking open/save in dialog)

我正在使用 Glassfish V3 服务器。经过java.dzone中的Glassfish生存指南,我将com.sun.grizzly.writeTimeout修改为300000。根据我从各个博客的理解,这个jvm选项对应于Grizzly停止等待浏览器读取响应之前的时间字节。默认情况下,如果浏览器在 30 秒后没有读取所有响应字节,Grizzly 会断开连接。由于我已更改为 300000 毫秒,我认为灰熊会在 300 秒后断开连接。但是,现在如果单击打开/保存的等待时间

感谢任何意见。

【问题讨论】:

    标签: download glassfish-3 grizzly


    【解决方案1】:

    Grizzly 进行 3 次尝试发送至少 1 个字节的数据。每次尝试可能需要 {com.sun.grizzly.writeTimeout} 毫秒。

    【讨论】:

    • 感谢 Alexey 的澄清。
    • writeTimeout 有最大限制吗?我已将值更改为 600000 毫秒。但连接在 16 分钟后关闭。
    • 最大值为 Integer.MAX_VALUE。还有一个值会影响 servlet 处理逻辑 - “请求超时”,它是给予 servlet 完成单个请求处理的时间。您可以使用 asadmin 命令设置/更改它,例如:“asadmin set server-config.network-config.protocols.protocol.http-listener-1.http.request-timeout-seconds=”跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多