zoukankan      html  css  js  c++  java
  • 第一次学习graph ql

    REST API是一种架构风格,而 GraphQL 是一种查询语言
    GraphQL 服务器可用于多种语言,例如Java、Python
    不是nosql,Neo4j用的Cypher语言才是

    https://www.fullstacktutorials.com/interviews/graphql-interview-questions-57.html

    GraphQL 只有一个带有 POST 方法的端点。但是可以处理更加复杂的请求
    REST 可以有许多具有 GET、POST、PUT、PATCH 方法的端点。

    在 GraphQL 中,Mutation 用于更改数据。例如 - 创建、更新和删除数据。

    在 GraphQL 中,订阅用于监听任何数据变化。
    例如 -如果客户端订阅了该事件,服务器将在任何数据更改时通知客户端。

    Resolver 是一个函数,用于处理图形查询并为 graphql 查询生成响应。

    如何保护 GraphQL 查询?设置查询超时

    GraphQL 的缺点是什么?
    缓存 - GraphQL 不如 REST,尤其是 HTTP 缓存。
    查询复杂度。

    operations是查询语句,variables是具体要制定的变量数值,参考:https://www.apollographql.com/blog/graphql/examples/what-is-a-graphql-query-graphql-query-using-apollo-explorer/

    query GetAlbumByTitle($albumTitle: String!) {
    album(title: $albumTitle) {
    title
    artist {
    name
    }
    genre
    tracks {
    title
    number
    }
    }
    }

    Over-Fetching 和 Under-fetching 都是使用 GraphQL 可以解决的性能问题。如果您拥有准确的端点来为您的产品提供完全正确的数据,您就不会看到这些问题。

  • 相关阅读:
    LAMP企业架构读写分离
    docker技术入门(2)
    docker技术入门(1)
    终极实验
    java——并查集 UnionFind
    java——字典树 Trie
    java——线段树 SegmentTree
    java——最大堆 MaxHeap
    java——链表映射 LinkedListMap
    java——数据结构
  • 原文地址:https://www.cnblogs.com/immiao0319/p/15059679.html
Copyright © 2011-2022 走看看