在c#中发送http请求时如何放置计时器或等待?

问题描述 投票:0回答:1

我将以编程方式向API发送超过一百万个请求。看起来每200个请求都会受到限制,需要等待5分钟才能发送另外200个请求。如何通过c#代码执行此操作?我看过计时器,但是我对逻辑的工作方式感到困惑。有人可以帮我吗?

非常感谢!

c# timer wait sleep throttling
1个回答
0
投票

正如罗恩·拜尔(Ron Beyer)所指出的那样,数学对您不利。如果您每200个请求就取消订阅,则将需要5000个周期来完成。 Wich至少等于25000分钟,即416小时,或17.36天。这是最短的时间,假设请求本身不会花费任何时间。

我想可以肯定地说,API提供程序不想让您这样做。尽管您可以限制匹配请求,但由于17 days对于任何应用程序来说可能有点长,因此它不会生效。您将需要一个不错的数据库来存储100万个请求中的progress

唯一的方法是,如果有一个允许批量请求的API调用。有了网络开销,很明显,只要200个项目的1个请求中的1个请求就不会花费。但是为此,您必须与API提供程序进行交谈。

© www.soinside.com 2019 - 2024. All rights reserved.