Ara*_*and 5 c# azure azure-table-storage
我有一个方法,我们调用以获取对CloudTable写入或查询表存储之前的引用.
private static CloudTable GetCloudTable() {
var storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString"));
var tableClient = storageAccount.CreateCloudTableClient();
var table = tableClient.GetTableReference("TheTableName");
return table;
}
Run Code Online (Sandbox Code Playgroud)
可以接受将它放在我的表处理类的构造函数中吗?在每个表插入上运行此代码是一个额外的开销吗?在我看来,我正在增加我正在运行的交易数量.
小智 11
您的代码段不会将任何消息发送到Storage Service.仅当您使用"table"变量实际创建,查询或对存储执行任何CRUD操作时,才会发送实际消息.所以答案是"我是否通过在每个表插入上运行此代码来增加事务数量?" 没有.
也就是说,CloudStorageAccount.Parse和CloudConfigurationManager.GetSetting(代码片段中的第一行)确实会产生一些开销(字符串解析和配置项检索).所以我建议你只执行一次,然后在每个表操作中重用它们的结果(是的,把它放在构造函数中是一个选项).
但是,CreateCloudTableClient()返回的CloudTableClient对象不保证是线程安全的.因此,如果线程在你的环境中是一个问题(即你是从多线程使用同一个类的实例),我建议你每次需要时创建一个新的CloudTableClient实例.
| 归档时间: |
|
| 查看次数: |
1433 次 |
| 最近记录: |