C# 将块Blob上载到Azure的性能问题

C# 将块Blob上载到Azure的性能问题,c#,.net,sql-server,azure,azure-storage-blobs,C#,.net,Sql Server,Azure,Azure Storage Blobs,我开发了一个C#DotNet应用程序,将SQL Server数据库备份到Azure Block Blob 但是,与SQL备份到URL相比,它的速度非常慢。在网络活动上运行性能计数器时,我看到备份到URL以大约30 MBPS的速度发送,而我的应用程序在向Blob发送块时以大约5 MBPS的速度发送。Azure中是否有一些设置控制使用PutBlock发送的块的传输速度?我知道SQL备份会创建一个页面Blob,而我使用的是块Blob。这会有什么不同吗?对于块blob,在SDK中,有一个BlobRequ

我开发了一个C#DotNet应用程序,将SQL Server数据库备份到Azure Block Blob


但是,与
SQL备份到URL
相比,它的速度非常慢。在网络活动上运行性能计数器时,我看到
备份到URL
以大约30 MBPS的速度发送,而我的应用程序在向Blob发送块时以大约5 MBPS的速度发送。Azure中是否有一些设置控制使用
PutBlock
发送的块的传输速度?我知道SQL备份会创建一个页面Blob,而我使用的是块Blob。这会有什么不同吗?

对于块blob,在SDK中,有一个
BlobRequestOptions
对象的
ParallelOperationThreadCount
属性(获取或设置可同时上载的块数)(有关详细信息,请参阅)。通过使用此属性,可以更快地上载blob

使用此属性的示例:

var requestOption = new BlobRequestOptions()
{
    ParallelOperationThreadCount = 5 //Gets or sets the number of blocks that may be simultaneously uploaded.
};

你能分享你的代码吗?数据的大小是多少?这不是一个庞大的项目,但可能比这里可以输入的数据还要大。你推荐什么?我可以上传代码到我的服务器,并在这里提供链接。