1

我的主要目标是定期轮询由 PaaS 提供商 (Azure) 托管的文件,以防止它变冷。这是一个 600K+ 的 pdf,所以如果我每分钟轮询一次,这可能会每月生成大量数据(超过 20GB)。

我尝试的两种方法都执行数据的完整下载:

  1. Invoke-WebRequest -Uri https://app.whatever.com/docs/staywarm.pdf
  2. ((New-Object Net.WebClient).DownloadString('https://app.whatever.com/staywarm.pdf'))

我只想获得前 1K,甚至只是前 100 个字节。我的理论是即使这样也应该保持该文件温暖。


我已经打开了“始终开启”。所以有趣的是,PDF 仍然经常需要 20 秒才能开始下载。命名的 PDF BTW 是一份服务条款 PDF,用户必须在登录前接受。因此,当它必须下载应用程序时,它本身就应该是热的,因为与登录页面相关的所有文件(HTML、CSS、JS)都必须提供给浏览器。所以我认为像那个大 PDF 这样的单个文件可以保持冷,尽管应用程序本身是温暖的?

4

2 回答 2

0

目前我有我执行的这个脚本:

$wc = (New-Object Net.WebClient).OpenRead('https://app.whatever.com/docs/staywarm.pdf')
$tr = New-Object -TypeName System.IO.StreamReader -ArgumentList $wc
$tr.ReadLine()
$tr.Close()
于 2019-11-13T00:45:39.163 回答
0

您可以打开以下Always On选项:

在此处输入图像描述

它将防止您的应用因不活动而闲置


如果您仍想使用您的方式,您可以只编写程序以使您的网络应用程序响应一个空字符串到特定路径。例如:在.NET web 应用程序中,您可以直接响应路径'/check' 的一个OK 操作结果。

于 2019-11-06T02:07:46.490 回答