![GraphQL Tutorial](/graphql/images/graphql-mini-logo.jpg)
- GraphQL 教程
- GraphQL - 首页
- GraphQL - 简介
- GraphQL - 环境搭建
- GraphQL - 架构
- GraphQL - 应用组件
- GraphQL - 示例
- GraphQL - 类型系统
- GraphQL - 模式
- GraphQL - 解析器
- GraphQL - 查询
- GraphQL - 变异
- GraphQL - 验证
- GraphQL - JQuery 集成
- GraphQL - React 集成
- GraphQL - Apollo 客户端
- GraphQL - 客户端身份验证
- GraphQL - 缓存
- GraphQL 有用资源
- GraphQL - 快速指南
- GraphQL - 有用资源
- GraphQL - 讨论
GraphQL - 架构
GraphQL 是一种规范,描述了 GraphQL 服务器的行为。它是一套关于如何处理请求和响应的指南,例如支持的协议、服务器可以接受的数据格式、服务器返回的响应格式等。客户端向 GraphQL 服务器发出的请求称为查询。GraphQL 的另一个重要概念是其传输层无关性。它可以与任何可用的网络协议一起使用,例如 TCP、Websocket 或任何其他传输层协议。它也与数据库无关,因此您可以将其与关系型数据库或 NoSQL 数据库一起使用。
GraphQL 服务器可以通过以下三种方法中的任何一种进行部署:
- 连接数据库的 GraphQL 服务器
- 集成现有系统的 GraphQL 服务器
- 混合方法
连接数据库的 GraphQL 服务器
这种架构具有一个集成了数据库的 GraphQL 服务器,并且经常可以用于新项目。在收到查询时,服务器读取请求有效负载并从数据库中获取数据。这称为解析查询。返回给客户端的响应遵循官方 GraphQL 规范中指定的格式。
![GraphQL Server Connected Database](/graphql/images/graphql_server_connected_database.jpg)
在上图中,GraphQL 服务器和数据库集成在一个节点上。客户端(桌面/移动)通过 HTTP 与 GraphQL 服务器通信。服务器处理请求,从数据库中获取数据并将其返回给客户端。
集成现有系统的 GraphQL 服务器
这种方法对于拥有遗留基础设施和不同 API 的公司很有帮助。GraphQL 可用于统一现有系统中的微服务、遗留基础设施和第三方 API。
![GraphQL Server Integrating Existing Systems](/graphql/images/graphql_server_integrating_existing_systems.jpg)
在上图中,GraphQL API 充当客户端和现有系统之间的接口。客户端应用程序与 GraphQL 服务器通信,后者依次解析查询。
混合方法
最后,我们可以结合上述两种方法来构建 GraphQL 服务器。在此架构中,GraphQL 服务器将解析收到的任何请求。它将从连接的数据库或集成的 API 中检索数据。这在下图中表示:
![GraphQL Hybrid Approach](/graphql/images/graphql_hybrid_approach.jpg)
广告