Azure-将CreateTableIfNotExist()代码从Run()移动到OnStart()时,性能大幅下降

Azure-将CreateTableIfNotExist()代码从Run()移动到OnStart()时,性能大幅下降,azure,Azure,我有一个worker角色,它执行一些涉及Azure存储的处理。如果将CreateTableIfNotExist代码从workerrole的Run方法移动到OnStart方法,则总体性能会降低。例如,如果CreateTableIfNotExist代码添加到OnStart中,则将条目添加到azure存储中大约需要5-10秒,而如果CreateTableIfNotExist代码添加到Run方法中,则只需要200毫秒。没有其他代码更改。您没有意外地将CreateTableIfNotExists方法移动到

我有一个worker角色,它执行一些涉及Azure存储的处理。如果将CreateTableIfNotExist代码从workerrole的Run方法移动到OnStart方法,则总体性能会降低。例如,如果CreateTableIfNotExist代码添加到OnStart中,则将条目添加到azure存储中大约需要5-10秒,而如果CreateTableIfNotExist代码添加到Run方法中,则只需要200毫秒。没有其他代码更改。

您没有意外地将CreateTableIfNotExists方法移动到非结束循环中,是吗?CreateTableIfNotExists通常是一个缓慢的调用,应该很少调用,最好是每个应用程序调用一次

不,我没有。顺便说一下,在这种情况下,在Run中添加相同的代码会显示相同的行为,不是吗?下面是我用来测试此行为的示例代码:CloudStorageAccount=CloudStorageAccount.ParseconnStrTableStore;CloudTableClient tableClient=account.CreateCloudTableClient;tableClient.CreateTableIfNotExistTestTable;