我尝试了所有我能想到的方法来提高插入速度。这只是一些没有改进的事情。如何加速Azure存储队列
我有大量的标识符(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 vs ToString) –