getUserRepo(id:1) getUserRepo(id:2) getUserRepo(id:n) R : 1 R : 2 R : 3 R : n+1 N + 1 query problem Client GraphQL Server getUserWithRepos user with repo list REST GraphQL R : 1
user -> user .name() .bio() .avatarURL(args -> args.size(48)) .company() .repositories( args -> args.first(100), repo -> repo .id() .name() ) ).build() query{ user(login:”efung”){ name bio avatarURL(size:48) company repositories(first:100){ node { id name } } } }