top | item 46265973

(no title)

aabhay | 2 months ago

How do GraphQL based systems solve the problem of underlying database thrashing, hot shards, ballooning inner joins, and other standard database issues? What prevents a client from writing some adversarial-level cursed query that causes massive internal state buildup?

I’m not a database neckbeard but I’ve always been confused how GraphQL doesn’t require throwing all systems knowledge about databases out the window

discuss

order

spooneybarger|2 months ago

Most servers implement a heuristic for "query cost/complexity" with a configurable max. At the time the query is parsed, its cost is determined based on the heuristic and if it is over the max, the query is rejected.

lll-o-lll|2 months ago

Which would be fine for internal facing, but it doesn’t sound like it would be enough in an adversarial context?