Re:The dark side of GraphQL: performance
by picardo on Wednesday January 01, 2020 @03:53PM
(#21930549)
I haven't used Apollo Server lately. But the way you describe it doesn't address the core issue, which is the initialization of the intermediate objects in-memory. So just to give an example, if I wanted to query for the projects of listings of my company, I can write it this way in GQL:
me { company { listings { projects { id name } } } }
This will initialize: a User, a Company, Listings and Projects of all listings.
I can also write this in SQL using a couple of joins and return an array. The memory consumption is trivial in comparison to the original request.
I can also write this in SQL using a couple of joins and return an array. The memory consumption is trivial in comparison to the original request.