【发布时间】:2022-09-27 23:04:23
【问题描述】:
GraphQL Server 和 API Gateway 有什么区别?因为它既可以结合多个 api 的响应,又可以进行身份验证、输入验证、度量。
标签: graphql api-gateway
GraphQL Server 和 API Gateway 有什么区别?因为它既可以结合多个 api 的响应,又可以进行身份验证、输入验证、度量。
标签: graphql api-gateway
网关是路由流量的服务器,它是 Martin Fowler 在here 中描述的常用系统设计模式。
您可以在OSI model 的任何层中实现网关。
您可以使用它来路由传输层中的 TCP、UDP 包、DNS 查询、应用层中的 HTTP 请求,甚至是计算机的主板总线。
Graphql Server 是一个 Web 服务器,在OSI model 的应用层,它实现了GraphQL spec。
您可以使用 Graphql 服务器实现网关。
【讨论】:
GraphQL 服务器是一种 API 网关。
目标是从一个端点公开来自多个微服务的大量 API。
真正的区别在于,使用 GraphQL,您将要求 api 获取一些信息(并且您将在正文中发送要检索的数据的结构). 一个经典的 API 将在其 OpenAPI 合约中定义一个响应结构,无论您想要与否,您都将收到“所有数据”。
【讨论】: