Blob 存储现在支持 SSH 文件传输协议 (SFTP)。 本文包含有助于优化存储请求性能的建议。 若要详细了解对 Azure Blob 存储的 SFTP 支持,请参阅 对 Azure Blob 存储的 SSH 文件传输协议(SFTP)支持。
使用并发连接提高吞吐量
Azure Blob 存储可线性扩展,直至达到最大存储帐户流出量和流入量限制。 因此,应用程序可以通过使用更多客户端连接实现更高的吞吐量。 若要查看存储帐户出口和入口限制,请参阅 标准存储帐户的可伸缩性和性能目标。
对于 WinSCP,最多可以使用 9 个并发连接来上传多个文件。 其他常见的 SFTP 客户端(如 FileZilla)也有类似的选项。
重要
并发上传只会在同时上传多个文件时提高性能。 不支持使用多个连接上传单个文件。
- 在“首选项”对话框的“日志记录”下,如果选中“启用会话日志记录级别”,请选择“减少”或“正常”。
谨慎
日志记录级别 调试 1 或 调试 2 显著降低了会话操作性能。
使用高级块 blob 存储帐户
Azure 高级块 Blob 存储帐户 提供一致的低延迟和高事务速率。 高级块 Blob 存储帐户可以使用更少的线程和客户端达到最大带宽。 例如,使用单个客户端时,与标准性能常规用途 v2 存储帐户一起使用的相同设置相比,高级块 Blob 存储帐户可以实现 2.3 倍 的带宽。
降低网络延迟的影响
由于 SFTP 依赖于小型消息,因此网络延迟对其性能具有很大影响。 默认情况下,大多数客户端使用大约 32 KB 的消息大小。
增加默认消息大小以实现更好的性能
对于 Windows 上的 OpenSSH,可以使用以下选项将消息大小增加到 100000
-B
:sftp -B 100000 testaccount.user1@testaccount.blob.core.chinacloudapi.cn
对于 Linux 上的 OpenSSH,可以使用以下选项将缓冲区大小增加到 262000
-B
:sftp -B 262000 -R 32 testaccount.user1@testaccount.blob.core.chinacloudapi.cn
从与存储帐户位于同一区域的客户端发出存储请求