我想要將本端檔案複製到 AWS Storage Gateway 上的網路檔案系統 (NFS) 或伺服器訊息區塊 (SMB) 檔案共用,但傳輸速度緩慢。如何提高上傳效能?
解決方案
將本端檔案複製到 Storage Gateway 上的檔案共用時,考慮下列方法來改善效能:
**注意事項:**檔案閘道是物件儲存庫快取,而不是檔案伺服器。這表示檔案閘道的效能特性與檔案伺服器的效能特性不同。
擴展工作負載
如需最佳效能,請新增執行緒或用戶端來擴展工作負載。當您傳輸檔案目錄時,在工作負載為多執行緒或涉及多個用戶端時,檔案閘道的擴展效果最佳。檢閱您的檔案管理工具,並確認工具是否會依預設執行單一執行緒上傳。
最佳實務是在傳輸小型或大型檔案時使用多個執行緒或用戶端。使用多個執行緒傳輸大型檔案 (每個檔案數十或數百 MiB) 時,您可以取得每秒最高的 MiB 輸送量。由於建立新檔案會產生超載,因此與傳輸大型檔案的相同工作負載相較,傳輸許多小型檔案會導致較低的每秒 MiB 輸送量。
若要在 Windows 中執行多個執行緒副本,請使用 robocopy (Microsoft 的檔案複製工具)。
**注意事項:**如需傳輸較小的檔案,請測量每秒檔案的傳輸速率,而不是每秒的 MiB。檔案建立速率可能會佔用與傳輸較小檔案相關聯的工作負載空間。
調校快取儲存體
將閘道的快取儲存體總大小調校為作用中工作集的大小。使用多個本端磁碟的快取可平行存取資料,並導致更高的每秒 I/O 作業數 (IOPS)。如需詳細資訊,請參閱 Amazon Simple Storage Service (Amazon S3) 檔案閘道的效能指引。
此外,請監控閘道的 CachePercentDirty 指標。此指標會傳回未保存至 S3 儲存貯體的資料佔用的快取儲存體百分比。CachePercentDirty 值較高可能會導致閘道的快取儲存體限制對閘道的寫入。
使用更高效能的磁碟
最佳實務是將固態硬碟 (SSD) 支援的磁碟用於具有專用租用的閘道的快取儲存體。理想情況下,基礎實體磁碟不應該與其他虛擬機器共用,以防止 IOPS 耗盡。
若要測量磁碟 IOPS,請將 ReadBytes 和 WriteBytes 指標與 CloudWatch 中的範例統計資料搭配使用。一般來說,當您檢閱閘道的這些指標時,請尋找低輸送量和低 IOPS 趨勢,以指出任何與磁碟相關的瓶頸。
監控 CloudWatch 中的 IOWaitPercent 指標,該指標會報告 CPU 正在等待本端磁碟回應的時間百分比。高於 10% 的值通常表示基礎磁碟出現瓶頸,可能是磁碟速度較慢的結果。在這種情況下,新增其他磁碟,以為閘道提供更多可用的 IOPS。
注意事項: 對於以 Amazon Elastic Compute Cloud (Amazon EC2) 為基礎的閘道,執行個體的 Amazon Elastic Block Store (Amazon EBS) 輸送量也可能是一項限制因素。確認閘道的主機虛擬機器或 Amazon EC2 執行個體的 CPU 和 RAM 是否支援閘道至 AWS 的輸送量。例如,每個 EC2 執行個體類型都有不同的基準輸送量。如果高載輸送量耗盡,則執行個體會使用基準輸送量,這可能會限制 AWS 的上傳輸送量。如果在 Amazon EC2 執行個體上託管您的閘道,請檢查執行個體的 NetworkOut 指標。如果 NetworkOut 指標在測試期間保留基準輸送量,則請考量將執行個體變更為較大的執行個體類型。