【发布时间】:2013-10-31 16:48:44
【问题描述】:
我已经尽我所能来提高插入速度。这实际上只是几件没有改进的事情。
我需要将大量标识符 (Int64) 发送到队列,以便我的多个工作角色可以处理它而不必担心并发问题。
我尝试了foreach 循环(.ToString() 和BitConverter.GetBytes()):
foreach(long id in ids) {
queue.AddMessage(new CloudQueueMessage(id.ToString() /*BitConverter.GetBytes(id)*/));
}
还有一个并行的.ForAll<T>():
ids.AsParallel().ForAll(id => queue.AddMessage(new CloudMessage(id.ToString())));
来自本地和同一数据中心内的 WorkerRole,插入的最大值为每秒 5 次,平均每秒 4.73 次。
我做错了吗?
【问题讨论】:
-
您要添加的消息有多大?
-
@PeterRitchie 2 个字节或 6 个字节,具体取决于方法(BitConverter 与 ToString)
标签: performance azure azure-storage azure-storage-queues