Azure Blob 儲存體中的 SSH 檔案傳輸通訊協定 (SFTP) 效能考量

Blob 儲存體現在支援 SSH 檔案傳輸通訊協定 (SFTP)。 本文包含協助您將儲存體要求效能最佳化的建議。 若要深入了解適用於 Azure Blob 儲存體的 SFTP 支援,請參閱適用於 Azure Blob 儲存體的 SSH 檔案傳輸通訊協定 (SFTP) 支援

使用並行連線增加輸送量

Azure Blob 儲存體會以線性方式調整,直到達到儲存體帳戶的輸出上限和輸入限制為止。 因此,您的應用程式可以使用更多用戶端連線來達成更高的輸送量。 若要檢視儲存體帳戶輸出和輸入限制,請參閱標準儲存體帳戶的可擴縮性和效能目標

針對 WinSCP,您最多可以使用 9 個並行連接來上傳多個檔案。 其他常見的 SFTP 用戶端,例如 FileZilla 提供類似的選項。

重要

同時上傳多個檔案時,並行上傳只會改善效能。 不支援使用多個連線上傳單一檔案。

  • 在 [喜好設定] 對話方塊的 [記錄] 下,如果核取了 [在層級上啟用工作階段記錄],請選取 [縮減] 或 [一般]

警告

記錄層級 [偵錯 1] 或 [偵錯 2] 會大幅降低工作階段作業效能。

使用進階區塊 Blob 儲存體帳戶

Azure 進階區塊 Blob 儲存體帳戶提供始終如一的低延遲和高交易率。 進階區塊 Blob 儲存體帳戶可以使用較少的執行緒和用戶端達到最大頻寬。 例如,透過單一用戶端,進階區塊 Blob 儲存體帳戶可以達到 2.3 x 的頻寬,相較於與標準效能一般用途 v2 儲存體帳戶搭配使用的相同設定。

降低網路延遲的影響

網路延遲嚴重影響 SFTP 效能,因為 SFTP 依賴小型訊息。 根據預設,大部分的用戶端使用的訊息大小約 32KB。

  • 增加預設訊息大小以達到更好的效能

    • 如果是 Windows 的 OpenSSH,您可以使用 -B 選項:sftp -B 100000 testaccount.user1@testaccount.blob.core.windows.net,來增加訊息大小至 100000

    • 如果是 Linux 的 OpenSSH,您可以使用 -B 選項:sftp -B 262000 -R 32 testaccount.user1@testaccount.blob.core.windows.net,來增加緩衝區大小至 262000

  • 從與儲存體帳戶位於相同區域的用戶端提出儲存體要求

另請參閱