我们如何确定Azure搜索服务的繁忙程度?

时间:2017-07-20 13:20:23

标签: azure-search

我们正在使用.NET SDK将数据上传到我们的Azure搜索服务。如果我们开始获得HTTP 207响应,我们已经有了自动退出的逻辑,甚至在我们获得HTTP 503响应后也会进一步停止。

我看到的问题......这一切看起来像是一个黑盒子。我想知道 如何忙于搜索服务,因此我们不会在重试特定的数据上传之前等待太长时间而导致问题。我们是否可以获得有关天蓝色搜索服务状态,繁忙程度等的任何诊断信息?我们可以获得在接收207和503时可以使用的任何类型的诊断信息,这样我们就可以自动等待几秒或几分钟(根据搜索服务报告的繁忙程度动态计算出来),这样我们就可以最有效地启动在搜索服务真正准备就绪时发送更多数据?

谢谢, 安德烈

1 个答案:

答案 0 :(得分:0)

由于您使用的是.NET SDK,因此您已经在503s上进行了重试行为。 SDK默认使用指数退避策略。您必须自己处理的唯一重试案例是从Index API返回的207。

Azure搜索中目前没有API可主动测量搜索服务的繁忙程度。假设您没有使用免费服务,则您的搜索服务的所有容量都将专用于您。您的搜索服务不会知道什么时候它不会再忙,因为这完全取决于您的应用程序加载它的负载。这就是为什么我们建议在重试时采用指数退避策略。

如果您想了解SDK的指数重试策略是如何实现的,您可以review the code on GitHub