1.要解決的問題
在短時間內一般很難通過增加機器數量來應對突發性的訪問量增加。儘管可以考慮通過預測訪問量的方式增加服務器來解決這一問題,但出於成本考慮這樣增加服務器數量耗費很大。
2.雲模式的說明
在這個模式中,AWS雲提供的網絡存儲將被用作web服務器,不僅寄存像圖片、視頻這樣的大文件,還會託管HTML。因爲網絡存儲最初就是被設計用於共享存儲,所以不需考慮容量方面的問題。即使某個服務的訪問量驟增,網絡存儲作爲一個整體,也能夠很好地處理這一過程,使你能夠像使用web服務器一樣而無需採取任何特殊的措施來處理負載。
3.實施
將要發佈的靜態內容(HTML、CSS、JavaScript、圖片、視頻等)上傳至亞馬遜S3的網絡存儲上。
設置S3的桶來發布內容,並將其機制設置爲允許公開訪問桶中的內容。
開啓S3的網站託管功能並設置一個首頁和一個出錯頁面,實現在S3上託管網站。
4.配置
5.好處
訪問靜態內容的任務都交由S3處理,使你輕鬆地增加了web系統的可用性和持久性。
6.注意事項
在S3上不可能運行服務器端的程序,例如,它不能針對每個登錄的用戶輸出不同的頁面。
當JavaScript被嵌入在由S3傳輸的內容中,且數據將會通過異步通信從另一臺服務器上獲得時,獲取數據的服務器和域名地址將會有所不同。由於JavaScript主要通信封閉的限制,這時則有必要通過JSONP來進行通信。
7.其他
這個模式甚至也可以用於動態網站,如亞馬遜內容管理系統(CMS)。例如,當你使用MovableType來發布博客,那麼博客引擎編寫的一個靜態HTML文件就可以寄放在S3上。
S3還有一個發佈簽名URL的功能。你可以用它來發佈一個簽名的URL來允許有限的用戶訪問。你還可以對這個簽名地址設置一個期限。參見私有分配模式。
S3還提供了一個用於執行訪問驗證的系統,即所謂的“桶規則”。你可以使用它來允許特定的用戶進行訪問或只限制訪問HTTPS。
到2012年三月,超過9千億個對象(文件)存儲在S3上,並且在頂峯期,每秒處理了超過70萬次的請求。