GraphQL Caching and other Adventures in Nodeland - Issue #35
Hi Everyone! Another week in this “impossible” November has passed - my current workload is very high at the minute.. I hope the content you’ll find this week is quite interesting.
Mercurius
I have been preparing a new talk on GraphQL caching and I assembled some benchmarks on the impact a “simple” solution like the one in mercurius-cache implement can make a difference in your GraphQL deployment. The “easy” improvement you can get is 4x, which is pretty impressive:
Here is the PR adding the benchmark. Note that the PR had a bug / the time was incorrectly represented as milliseconds while it was seconds instead.
Last week I shipped a new release of Mercurius: v8.9.0 and then v8.9.1.
Fastify
We release v3.24.0 today that ships with a nice improvement on reply.getResponseTime() which makes it deterministic after the response has been sent.
Node
Events
On November 25th I’m going to present Fastify at the “JavaScript Congress”!
Join me at WeAreDevelopers JavaScript Congress! I will demo @fastifyjs and provide a sneak-peak to some of the most advanced features!
Useful modules
Have you got a favorite module that migrated to ESM and you cannot migrate to ESM just yet? This module is for you:
News
Read up this article on the impact of the drop of storage cost vs CPU. We live in a brave new world for database access. I’m not necessarily like the conclusion to just use DynamoDB but it’s definitely something to keep in mind.
Have you ever seen an Agile process went really bad? Here is a long story on what looks like, how to detect it… and when to “run”.
I love the depth of technical articles that are published on CloudFlare blog. They are amazing. This one shows the kind of challenges and solutions they need to face and implement every day. I’m a fan.
A friend linked me this 2020 article about GraphQL directives, their history and usage. I think it’s a worth read:
I often get asked how secure is GraphQL. It’s paramount that every GraphQL resolvers is wrapped to provide its own authorisations checks, similar to what we do with mercurius-auth. Read up at: