

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AWS Flow Framework 基本概念：可擴展的應用程式
<a name="awsflow-basics-scalable"></a>

Amazon SWF 有兩個主要功能，可讓您輕鬆擴展工作流程應用程式來處理目前的負載：
+ 完整的工作流程執行歷史記錄，可讓您實作無狀態應用程式。
+ 鬆散耦合到任務執行的任務排程，可輕鬆地擴展應用程式以符合目前需求。

Amazon SWF 透過將任務發佈到動態配置的任務清單來排程任務，而不是直接與工作流程和活動工作者通訊。相反地，工作者會使用 HTTP 請求來輪詢其個別任務清單。這種方法鬆散地將任務排程與任務執行耦合，並允許工作者在任何合適的系統上執行，包括 Amazon EC2 執行個體、公司資料中心、用戶端電腦等。由於 HTTP 請求源自於工作者，因此不需要外部可見的連接埠，這可讓工作者甚至在防火牆之後執行。

工作者用來輪詢任務的長時間輪詢機制能夠確保工作者不會過度負載。即使已排定的任務數量飆升，工作者會依自己的速度提取任務。不過，因為工作者是無狀態的，所以您可以啟動其他工作者執行個體來動態擴展應用程式，以符合增加的負載。即使它們是在不同的系統上執行，每個執行個體還是會提取相同的任務清單，而第一個可用的工作者執行個體會執行每個任務，不論工作者所在位置或其啟動時間為何。而負載減少時，您即可據此減少工作者數目。