1. Amazon Web Services (AWS)

 

1. Amazon Web Services

  - 簡稱:AWS。
  - 由Amazon.com提供。
  - 是一些remote computing services (也稱為 web services)所組成的集合。
  - 透過網際網路(Internet),Amazon為開發者提供自己本身擁有的後端技術平台,利用此技術平臺,開發者可以專注在自身應用的開發。

 

Amazon Web Services 是一組服務,它們允許通過程序訪問 Amazon 的計算基礎設施。Amazon 多年來一直在構建和調整這個健壯的計算平台,現在任何能夠訪問 Internet 的人都可以使用它。Amazon 提供幾個 Web 服務,但是本系列只關注滿足大多數系統的核心需求的基本服務:存儲、計算、消息傳遞和數據集。

通過在 Amazon 提供的可靠且經濟有效的服務上構建功能,可以實現複雜的企業應用程序。這些 Web 服務本身駐留在您的環境之外的雲中,具備極高的可用性。只需根據使用的資源付費,不需要提前付費。因為硬件由 Amazon 維護和服務,所以您也不需要承擔維護費用。

這個虛擬的基礎設施大大降低了當今 Web 環境中的 「貧富差異」。您可以在幾分鐘內快速地獲得一個基礎設施,而這在真實的 IT 工作室中可能會花費幾周時間。要點在於這個基礎設施是彈性的,可以根據需求擴展和收縮。世界各地的公司都可以使用這個彈性的計算基礎設施(見邊欄)。

公司不再需要承擔高額的基礎設施投資和維護成本,這為創新提供了更大的機會。現在,您可以把注意力集中在業務思想上,而不需要為服務器操心,不需要擔心磁盤空間不足等問題。根據 Amazon 的估計,企業把大約 70% 的時間花在構建和維護基礎設施上,在推動企業發展的思想上實際上只花費 30% 的時間。Amazon 會處理與硬件和基礎設施相關的繁瑣工作,並確保其高可用性,您只需關注如何把您的思想變成現實。

 

2. Amazon Web Services相關服務:

Infrastructure Services
  - Amazon Elastic Compute Cloud (Amazon EC2)
  - Amazon SimpleDB 
  - Amazon Simple Storage Service (Amazon S3) 
  - Amazon CloudFront 
  - Amazon Simple Queue Service (Amazon SQS) 
  - Amazon Elastic MapReduce 
  - Amazon Relational Database Service (Amazon RDS) 
  - AWS Premium Support

Virtual Private Cloud
  - Amazon Virtual Private Cloud

Payments & Billing
  - Amazon Flexible Payments Service (Amazon FPS) 
  - Amazon DevPay

On-Demand Workforce
  - Amazon Mechanical Turk

Alexa Web Services
  - Alexa Web Information Service 
  - Alexa Top Sites

Merchant Services
  - Amazon Fulfillment Web Service (Amazon FWS)

3. Amazon Elastic Compute Cloud 

  - 簡稱 Amazon EC2。
  - 主要是提供virtualization的hosting。
  - 採用 Xen 虛擬化技術,提供一個虛擬的執行環境。
  - 提供一個管控多個virtual machines的環境,能將做好的image上傳到S3上存起來,再透過EC2的環境來啟動幾個運算單元。
  - 類似遠端連線的電腦,但其儲存的Data會隨EC2關閉而消失。
  - 每一個開啟的EC2電腦稱為一個Instance。
  - 由Instance type來決定要使用哪種等級的機器,以CPU、Ram、Hard disk容量等做為分級的依據。

 

    Amazon EC2 是一個 Web 服務,它讓用戶可以在幾分鐘內獲得虛擬機器,根據需要輕鬆地擴展或收縮計算能力。
    您只需為實際使用的計算時間付費。如果需要增加計算能力,可以快速地啟動虛擬實例;當需求下降時,可以馬上終止它們。
    Amazon EC2 提供真正全 Web 範圍的計算,很容易擴展和收縮計算資源。您可以完全控制在 Amazon 數據中心中運行的這個計算環境。
    Amazon 提供五種服務器類型;可以選擇適合自己應用程序需要的服務器類型。服務器的範圍從普通的單核 x86 服務器直到八核 x86_64 服務器。
    可以把實例放在不同的地理位置或可用性區中,從而確保對抗故障的能力。Amazon 最近還引入了彈性 IP 地址的概念,彈性 IP 地址可以動態地分配給實例。

 

4. Amazon SimpleDB

  - 提供簡易結構化的資料儲存服務。
  - 以key-value 的方式儲存,同時還可以存放 attribute,並對 attribute 設定條件搜尋。
  - SimpleDB 的資料模型比較簡單,只有四種名詞:Domains、Items、Attributes、Values 。
  - 適用於主要使用索引及查詢功能、不需複雜關聯性資料庫功能的使用者。

 

   Amazon SimpleDB (SDB) 是一個用於存儲、處理和查詢結構化數據集的 Web 服務。它並不是傳統意義上的關係數據庫,而是一個高可用的模式,
   是雲中的非結構化數據存儲,可以使用它存儲和獲取包含鍵的值。每組包含鍵的值需要一個唯一的條目名;條目本身劃分為域。
   每個條目可以包含最多 256 個鍵-值對。可以在每個域中對自己的數據集執行查詢。SDB 當前還不支持垮域查詢。

   SDB 便於使用,提供關係數據庫的大多數功能。SDB 的維護比典型的數據庫簡單得多,因為不需要設置或配置任何東西。Amazon 負責所有管理任務。
   Amazon 自動地為數據編製索引,可以在任何時候任何地方訪問索引。不受模式限制的關鍵優點是,能夠動態地插入數據和添加新的列或鍵。

   SDB 是 Amazon 基礎設施的組成部分,會在幕後自動地擴展。您可以把注意力放在更重要的方面。同樣,只需為實際使用的數據集資源付費。

 

5. Amazon Simple Storage Service

  - 簡稱 Amazon S3。
  - 以網路介面提供使用者網路儲存空間。
  - 可藉由HTTP或BitTorrent進行檔案傳送。

 

   (S3) 提供一個用於數據存儲和獲取的 Web 服務接口。數據可以是任何類型的,可以從 Internet 上的任何地方存儲和訪問數據。
   可以在 S3 中存儲任意數量的對象;存儲的每個對象的大小可以從 1 字節到 5 GB。存儲本身位於美國或歐盟。在創建 bucket (與操作系統中的文件夾概念相似)
   時,可以選擇對象的存儲位置。使用與 Amazon 電子商務網站的全球網絡相同的數據存儲基礎設施存儲數據,確保安全性。

   對於存儲在 S3 中的每個對象,可以指定訪問限制,可以用簡單的 HTTP 請求訪問對象。甚至可以讓對象可通過 BitTorrent 協議下載。

   S3 讓用戶完全不必為存儲空間、數據訪問或數據安全性操心。甚至不必承擔維護存儲服務器的成本。
   Amazon 確保您的文件的高可用性,在任何時候都可以使用它們。Amazon 為 S3 提供的服務水平協議承諾 99.9% 的正常運行時間,每月度量一次

 

6. Amazon CloudFront

  - 提供內容物件傳送(CDN:Content Delivery Network)服務。
  - 檔案可以自動傳送到最接近的伺服器(Edge)位置,以加速client端連線效能。

 

7. Amazon Simple Queue Service

  - 簡稱 Amazon SQS。
  - 提供簡易序列服務。
  - 可以依需求設置SQS,每個SQS可以接收或傳送訊息(message)。
  - 每個message可保留4天。
  - 不需要透過任何安裝軟體,即可透過Internet在電腦間做訊息傳遞。

 

  Amazon Simple Queue Service (SQS) 允許訪問 Amazon 提供的可靠的消息傳遞基礎設施。可以使用簡單的基於 REST 的 HTTP 請求在任何地方發送和接收
  消息。不需要安裝和配置任何東西。可以創建任意數量的隊列,發送任意數量的消息。每個消息最多可以包含 8KB 的文本數據。可以在消息中使用的 Unicode 字符
  只包括#x9 | #xA | #xD | [#x20 to #xD7FF] | [#xE000 to #xFFFD] | [#x10000 to #x10FFFF]。
  每個隊列可以有一個可配置的可見性超時週期,用來控制多個讀者對隊列的訪問。一個應用程序從隊列中讀取一個消息之後,其他讀者就看不到這個消息,
  直到超時週期期滿為止。在超時週期期滿之後,消息重新出現在隊列中,另一個讀者進程就可以處理它。

 

8. Amazon Elastic MapReduce

  - 提供平行運算服務。
  - 針對需大量運算的人使用。
  - 結合 S3 與 EC2 兩種服務特性,來實做 MapReduce 架構。

 

 

可以根據需要結合使用這些服務;它們能夠很好地相互協作。因為這些服務在 Amazon 環境中運行,它們之間的所有通信通常非常快。

企業家可以利用這個虛擬基礎設施構建可伸縮且可靠的應用程序,與傳統的應用程序主機托管平台相比可以大大降低成本,因為為了應對服務量的波動和高峰,主機托管平台 需要大量服務器。

Amazon Web Services 成功案例

SmugMug 是一個在線照片存儲應用程序,它把超過 0.5 PB 的數據存儲在 S3 上,由此節約的服務和存儲成本接近 100 萬美元。它是 Elastic Compute Cloud (EC2) 計算資源的 重要用戶,它使用 EC2 應對需求的變化。

37Signals 是流行的在線項目管理軟件 Basecamp 的開發商,它使用 S3 滿足存儲需求。

紐約時報展現了 EC2 的強大能力,它在 36 小時內使用數百個 EC2 實例處理了數 TB 的存檔數據。

Animoto 是一個在線視頻生成程序,需要用非常大的計算能力處理視頻。最近出現了一次會壓垮大多數公司的系統的 Web 通信高峰,Animoto 使用 EC2 快速地擴展了處理能力,從而 成功地度過了這次高峰。當時,它曾經使用 3,500 個同時運行的虛擬實例。

 

 

參考來源:

1.http://aws.amazon.com/

2.http://en.wikipedia.org/wiki/Amazon_Web_Services

3.http://www.ibm.com/developerworks/cn/web/ar-cloudaws1/