Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Modeling GraphQL APIs

Modeling GraphQL APIs

8db4a0e0e16b3cb263114fab373bb77b?s=128

Renato Benkendorf

October 20, 2018
Tweet

More Decks by Renato Benkendorf

Other Decks in Technology

Transcript

  1. 1 Modeling GraphQL APIs Renato Benkendorf

  2. 2 @renatobenks

  3. 3

  4. 4

  5. 5 Software Engineer @renatobenks

  6. 6 Software Engineer @renatobenks creditas.com.br @CreditasBR Fintech Plataforma online Empréstimo

    com garantia
  7. 7

  8. 8 Modeling GraphQL API's Renato Benkendorf

  9. 9 Where it came from?

  10. 10

  11. 11 Scaling GraphQL

  12. 12 Scaling GraphQL 1. to multiple clients 2. cross-team

  13. 13 Scaling GraphQL Aggregation layer (ESB, BFF, API Gateway, Orchestrator)

  14. 14 Scaling GraphQL integrate business domains to the clients

  15. 15 Scaling GraphQL

  16. 16 Demystifying GraphQL

  17. 17 Demystifying GraphQL QL (Query-Language) Graph

  18. 18 Demystifying GraphQL Graph • The objects are vertices or

    nodes. • The links are edges.
  19. 19 Demystifying GraphQL Query language (QL) refers to any computer

    programming language that requests and retrieves data by sending queries
  20. 20 Demystifying GraphQL GraphQL • The nodes are the object

    types. • The edges are the fields.
  21. 21 and what about modelling?

  22. 22

  23. 23 Modeling a GraphQL API

  24. 24 Modeling a GraphQL API data modelling

  25. 25 Modeling a GraphQL API data modelling 1. Using “endpoint

    style” rather than thinking in graphs 2. Mapping their GraphQL schema directly to their database tables (foreign keys and all) 3. Mapping their GraphQL schema directly to their back-end data model (eg. your model classes from your ORM or the like)
  26. 26 Modeling a GraphQL API data modelling Using “endpoint style”

    rather than thinking in graphs
  27. 27 Modeling a GraphQL API data modelling Using “endpoint style”

    rather than thinking in graphs
  28. 28 Modeling a GraphQL API data modelling Mapping their GraphQL

    schema directly to their database tables
  29. 29 Modeling a GraphQL API data modelling Mapping their GraphQL

    schema directly to their database tables
  30. 30 Modeling a GraphQL API data modelling thinking in graphs

  31. 31 Modeling a GraphQL API data modelling thinking in graphs

  32. 32 data modelling Mapping their GraphQL schema directly to their

    back-end data model Modeling a GraphQL API
  33. 33 data modelling Mapping their GraphQL schema directly to their

    back-end data model Modeling a GraphQL API
  34. 34 Modeling a GraphQL API data modelling Mapping their GraphQL

    schema directly to their back-end data model
  35. 35 Modeling a GraphQL API data modelling Mapping their GraphQL

    schema directly to their back-end data model
  36. 36 "With GraphQL, you model your business domain as a

    graph" Modeling a GraphQL API
  37. 37 Use case

  38. 38

  39. 39 Use case current scenario • domain business currently is

    servicing • domain data in redux • mapping the boundaries
  40. 40 Use case next challenges • app cross-squad • app

    composition • manage a lot of data from different domains
  41. 41 Temos vagas vagas.creditas.com.br

  42. 42 Thanks!