GraphQL是什么,一起了解下

GraphQL产生背景

  • 后端服务面向领域模型,相对稳定,接口数据返回固定,数据灵活度较弱。
  • 前端、客户端表现形式多样,数据格式多样,后端接口数据的灵活度不足,前端多变的结构,需要组合多次后端的api调用,才形成符合要求的数据格式,这就是BFF(backend for frontend)层存在的意义。
    GraphQL就是BFF的一种实现方案。其特点是按需加载,不会返回多余的属性给客户端,更好适配多端需求,方便版本升级。

GraphQL组成结构

在这里插入图片描述

GraphQL执行原理

https://graphql.cn/learn/execution/

https://www.graphql-tools.com/docs/introduction
在这里插入图片描述

GraphQL-restAPI对比

在这里插入图片描述

部署架构

在这里插入图片描述

https://www.apollographql.com/docs/apollo-server/

服务端-DataFetcher一种实现方式

prisma

graphql-api-with-prisma举例

graphql与Springboot集成

参考文章

大厂实践

全面解析GraphQL在携程微服务背景下的前后端数据交互方案

GraphQL在微服务架构中的实践

How Netflix Scales its API with GraphQL Federation-part1
How Netflix Scales its API with GraphQL Federation-part2

细化内容

后续更多细化内容会维护到这里,欢迎关注

原文地址:https://www.cnblogs.com/coding-now/p/14660559.html