Azure HTTP 请求超时解决方法

2023-11-30

目前,我们有一个托管在 Azure VM 实例上的应用程序。

此应用程序有时会处理长时间运行和空闲的 HTTP 请求。这导致了一个问题,因为Azure 将关闭所有空闲时间超过几分钟的连接.

我看到了一些关于设置较低 TCP keepalive 速率的建议。我试过了将此速率设置为 45 秒左右但我的 HTTP 请求仍然被关闭。

有什么建议么?我们的虚拟机运行的是 Server 2008 R2。


作为一个简单的解决方法,我让脚本每 5 秒左右发送一个换行符以保持连接处于活动状态。

Example:

set_time_limit(60 * 30);
ini_set("zlib.output_compression", 0);
ini_set("implicit_flush", 1);

function flushBuffers()
{
    @ob_end_flush();
    @ob_flush();
    @flush();
    @ob_start();
}

function azureWorkaround($char = "\n")
{
    echo $char;
    flushBuffers();
}

$html = '';
$employees = getEmployees();
foreach($employee in $employees) {
    html .= getReportHtmlForEmployee($employee);
    azureWorkaround();
}

echo $html;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Azure HTTP 请求超时解决方法 的相关文章

随机推荐