rwieruch/blog_robinwieruch_content

why-graphql-advantages-disadvantages-alternatives missing disadvantages

GrosSacASac opened this issue · 3 comments

Hi I read https://www.robinwieruch.de/why-graphql-advantages-disadvantages-alternatives/

I think it is well written, however I think It is missing a disadvantage or two.

How to send and read binary data ? With graphql the answer is not so clear, base64 encoding decoding, multipart data, extension ?

Client side and server side overhead Runtime overhead compared to simple regular REST, also load time overhead to load the graphql on the client side.

Thanks for your feedback @GrosSacASac Helps me a lot to refine the content. I understand your 1. point. Would you like to write a short paragraph as a Pull Request for this article? The 2. point needs some more explanation: Do you mean the payload of a query or that you need a GraphQL client library on the client-side?

I could make a PR.

For 2 I mean 3 things:

For web front end you need to load a graphql client npm install apollo-client graphql-tag graphql That takes some brandwidth and load time away, If you want a web app to appear instantly (less than 1 second) you need to stay under the 50kb minfied gziped js budget.

Then everytime you make a query you need to construct a special graphql message (server and client) and deconstruct it on the receiving end. that is runtime performance overhead. Minimal but still there

in fact it might be way more if recommendation is followed https://github.com/apollographql/apollo-client#installation