

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

# GraphQL 和 AWS AppSync 架構
<a name="graphql-overview"></a>

**注意**  
本指南假設使用者具備 REST 架構樣式的工作知識。建議您在使用 GraphQL 和 之前，先檢閱此主題和其他前端主題 AWS AppSync。

GraphQL 是一種 APIs的查詢和處理語言。GraphQL 提供靈活且直覺式的語法來描述資料需求和互動。它可讓開發人員詢問確切的需求，並取得可預測的結果。它也可以在單一請求中存取許多來源，減少網路呼叫次數和頻寬需求，從而節省應用程式的電池壽命和 CPU 週期。

資料更新會隨著變動而變得簡單，讓開發人員能夠描述資料應如何變更。GraphQL 也可透過訂閱快速設定即時解決方案。所有這些功能結合強大的開發人員工具，使得 GraphQL 對管理應用程式資料至關重要。

GraphQL 是 REST 的替代方案。RESTful 架構目前是用戶端與伺服器通訊最熱門的解決方案之一。它以 URL 公開的資源 （資料） 概念為中心。這些 URLs 可用於透過 CRUD （建立、讀取、更新、刪除） 操作存取和操作資料，其形式為 HTTP 方法`POST`，例如 `GET`、 和 `DELETE`。REST 的優點是學習和實作相對簡單。您可以快速設定 RESTful APIs來呼叫各種服務。

不過，技術變得越來越複雜。隨著應用程式、工具和服務開始為全球受眾擴展，對快速、可擴展架構的需求至關重要。REST 在處理可擴展的操作時有許多缺點。如需範例，請參閱此[使用案例](https://aws.amazon.com/blogs/architecture/what-to-consider-when-modernizing-apis-with-graphql-on-aws/)。

在下列各節中，我們將檢閱一些有關 RESTful APIs概念。然後，我們將介紹 GraphQL 及其運作方式。

如需 GraphQL 的詳細資訊以及遷移到 的好處 AWS，請參閱 [GraphQL 實作的決策指南](https://aws.amazon.com/graphql/guide/)。

**Topics**
+ [什麼是 API](what-is-an-api.md)
+ [什麼是 REST](what-is-rest.md)
+ [什麼是 GraphQL](what-is-graphql.md)
+ [比較 REST 和 GraphQL](comparing-rest-graphql.md)
+ [為什麼透過 REST 使用 GraphQL](why-use-graphql.md)
+ [GraphQL API 的元件](api-components.md)
+ [GraphQL 的其他屬性](graphql-properties.md)