1
到目前为止,我有超过200个Google Analytics(分析)帐户来提取信息。我已使用限制数量的帐户(仅限10个)测试了我的解决方案。 一旦我把所有的帐号ID都放在我的逻辑里,它会给我错误配额限制每100秒100次请求。Google AnalyticsAPI |每100秒处理100个请求的限额
foreach (var viewID in _viewIds)
{
foreach (var dateRange in dateRanges)
{
tTaskList.Add(Task.Run(async() =>
{
try
{ var tReports = await gc.PostAsyncTask(url, reportRequest);
foreach (var report in tReports.reports)
{
if (report != null)
{
//All report logic here
//(...)
bool hasNextPage = false;
do
{
//All pagination logic here
//(...)
}while(hasNextPage);
}
}
}
catch (Exception ex)
{
//Write in Log
var ex_message = Common.Utils.GetExceptionMessage(ex);
Logger.WriteConsoleLog(ex_message.MessageString, (int)Logger.Logs.ERROR, APIName, RequestID);
}
})
); //end add task
}
}
如何控制请求数量?为了避免得到这些错误?
所以,我们可以说,如果我使用这些队列解决方案和explonential回退,我可以设法避免这些错误?假设我大幅减少它们,但仍然有一个或另一个错误,我可以捕捉它们并执行指数退避并再次重试。 – bmvr
这就是我所做的,如果我得到一个我只是重试它。我只是不喜欢这样,所以我增加了Que的想法来进一步减少它们。 Google实际上只是建议您实施退款。如果您喜欢我并且不喜欢在开发者控制台中看到报告中的错误,您不必添加它就可以了。 – DaImTo