【问题标题】:Response Time Out on IIS7, cannot extend to more than 30 sec (default)IIS7 上的响应超时,不能超过 30 秒(默认)
【发布时间】:2012-06-04 16:36:07
【问题描述】:

我有一个使用 .net 3.5、IIS7 和 SQL Server 2008 的网站。

在网页上,单击report download button,它会从 SQL Server 和 Stream 中以 excel 文件的形式加载数据给用户。

它工作正常,除非执行时间和加载时间(从 SQL Server)超过 30 秒,然后网页超时。

我尝试更改 web.config(可能是错误的),但没有帮助。

<system.web>
  <httpRuntime executionTimeout="240" maxRequestLength="20480" />
</system.web>

我可以通过只配置 IIS7 来解决这个问题吗?还是 SQL Server/Session State DB/Browser 也有超时限制?

谢谢

【问题讨论】:

    标签: asp.net sql-server http iis-7 session-state


    【解决方案1】:

    如果您使用的是 SQLCommand 对象,那么您可以设置一个属性“CommandTimeout”,并且您的处理应该不会失败。

    【讨论】:

    • 是的,它是 30 秒,如果它回答了您的问题,请勾选已回答。
    • 感谢您的回答。延长 SQLCommand 超时是否有任何风险或安全问题或任何其他缺点?
    • 没有风险,只有您的连接将处于活动状态并打开以接收来自数据库的指定编号响应。秒。
    • 好吧,如果您有需要大量处理能力的可公开访问的东西,那么有人可能会尝试对您实施拒绝服务。我猜你正在做的任何事情都会在数据库运行时彻底占据你的数据库,所以这可能是攻击你网站的人的载体。诚然,如果您已经接近 30 秒,则增加超时仅意味着您的资源繁重的任务只会变得更加繁重,因此增加超时并没有带来风险……只是如果您需要,您已经有风险。
    猜你喜欢
    • 2021-11-28
    • 1970-01-01
    • 1970-01-01
    • 2021-08-25
    • 1970-01-01
    • 2015-11-14
    • 2015-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多