本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。
實作S3 REST API的建議
貢獻者
建議變更
實作S3 REST API以搭配StorageGRID 使用時、請遵循以下建議。
針對不存在物件的使用者提出建議
物件金鑰建議
請根據第一次建立貯體的時間、遵循下列物件金鑰名稱建議。
在 StorageGRID 11.4 或更早版本中建立的貯體
-
請勿使用隨機值做為物件金鑰的前四個字元。這與前AWS關於金鑰前置碼的建議不同。請改用非隨機、非唯一的前置字元、例如
image
。 -
如果您遵循前 AWS 的建議、在金鑰首碼中使用隨機和唯一字元、請在物件金鑰前加上目錄名稱。也就是使用此格式:
mybucket/mydir/f8e3-image3132.jpg
而非此格式:
mybucket/f8e3-image3132.jpg
在 StorageGRID 11.4 或更新版本中建立的貯體
不需要限制物件金鑰名稱以符合效能最佳實務做法。在大多數情況下、您可以對物件金鑰名稱的前四個字元使用隨機值。
S3 工作負載的例外情況是、它會在一段短時間後持續移除所有物件。為了將此使用案例的效能影響降至最低、請將金鑰名稱的前置部分變更為每數千個物件、例如日期。例如、假設 S3 用戶端通常每秒寫入 2 、 000 個物件、而 ILM 或儲存庫生命週期原則則會在三天後移除所有物件。若要將效能影響降至最低、您可以使用如下模式命名金鑰: /mybucket/mydir/yyyymmddhhmmss-random_UUID.jpg
|
「範圍讀取」建議
如果"用於壓縮儲存物件的全域選項"啟用、 S3 用戶端應用程式應避免執行 GetObject 作業、以指定傳回位元組範圍。這些「範圍讀取」作業效率不彰、因為 StorageGRID 必須有效地解壓縮物件以存取要求的位元組。從非常大的物件要求少量位元組的 GetObject 作業尤其缺乏效率、例如從 50 GB 壓縮物件讀取 10 MB 範圍是效率不彰的。
如果從壓縮物件讀取範圍、用戶端要求可能會逾時。
如果您需要壓縮物件、而用戶端應用程式必須使用範圍讀取、請增加應用程式的讀取逾時。 |