rwieruch / blog_robinwieruch_content

✏️ Content of robinwieruch.de - Write guest blog posts or improve the content. Your help means a lot to me.
https://www.robinwieruch.de/
318 stars 395 forks source link

why-graphql-advantages-disadvantages-alternatives missing disadvantages #63

Open GrosSacASac opened 5 years ago

GrosSacASac commented 5 years ago

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.

rwieruch commented 5 years ago

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?

GrosSacASac commented 5 years ago

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

GrosSacASac commented 5 years ago

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