我目前正在处理一个使用旧版azure存储节点包的项目。
按照微软的建议,我一直在迁移整个应用程序以使用升级后的软件包。我将使用迁移指南分别针对Blob、队列和表进行跟踪。在数据表指南或示例中,我找不到任何提及如何设置重试选项的地方。
目前,我们使用旧的SDK有以下代码:
const azureStorage = require('azure-storage');
const retryOperations = new azureStorage.ExponentialRetryPolicyFilter();
const tableSvc = azureStorage.createTableService(<connectionString>).withFilter(retryOperations);
我的新代码的开始:
const {
AzureNamedKeyCredential,
TableServiceClient,
TableEntity,
odata
} = require("@azure/data-tables");
const tableSvc = TableServiceClient.fromConnectionString(<connectionString>);
// .withFilter()
如何在新代码中对tableSvc应用相同的重试选项?我还需要对我的队列和Blob执行同样的操作。
TableServiceClient.fromConnectionString
的第二个参数是选项,您可以在这里指定重试策略。
类似于:
const tableSvc = TableServiceClient.fromConnectionString(<connectionString>, {
retryOptions: {
maxRetries: 5,
maxRetryDelayInMs: 10000,
retryDelayInMs: 1000
}
});
文档链接:
TableServiceClient选项:https://learn.microsoft.com/en-us/javascript/api/@azure/data-tables/tableserviceclientoptions?view=azure节点最新
CommonClientOptions:https://learn.microsoft.com/en-us/javascript/api/@azure/core客户端/commonclientoptions?view=azure节点最新
管道重试选项:https://learn.microsoft.com/en-us/javascript/api/@azure/core rest pipeline/pipelineretryoptions?view=azure节点最新