Simone Sanfratello
Event based cache invalidation in GraphQL
#1about 2 minutes
Understanding GraphQL resolvers as cacheable functions
GraphQL resolvers can be treated as pure functions, allowing their results to be memoized and cached based on query arguments.
#2about 5 minutes
Comparing time-based and event-based cache invalidation
Time-based invalidation is simple but can serve stale data, whereas event-based invalidation keeps data synced but is more complex to implement.
#3about 4 minutes
Choosing a storage backend and generating cache keys
A cache can use fast in-memory storage for small, frequent data or a shared Redis instance for larger datasets across multiple nodes.
#4about 4 minutes
Using references for targeted cache invalidation
By tagging cache entries with references to the underlying data entities, you can precisely invalidate them when a write event occurs.
#5about 7 minutes
Live demo of setting up a basic GraphQL server
A Fastify server is configured with the Mercurius plugin to serve a GraphQL schema with user and country data from an in-memory database.
#6about 3 minutes
Live demo of implementing a time-based cache policy
The Mercurius Cache plugin is configured with a time-to-live policy for a query, using onHit and onMiss events to verify its effectiveness.
#7about 5 minutes
Live demo of solving stale data with event invalidation
An invalidation function is added to a mutation resolver, which uses references to clear the relevant user data from the cache upon update.
#8about 3 minutes
Exploring advanced features of Mercurius Cache
Mercurius Cache also supports custom key generation, request deduplication, programmatic invalidation with wildcards, and garbage collection for references.
#9about 4 minutes
Q&A on career advice and GraphQL best practices
Common GraphQL pitfalls are discussed, such as neglecting to use DataLoaders to solve the N+1 query problem.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
32:15 MIN
Q&A on cache strategies and dynamic content
Offline first!
17:32 MIN
Addressing GraphQL security and implementation challenges
GraphQL: Does it replace SQL, REST or Something Else?
13:39 MIN
Implementing frontend caching in React Native apps
Optimizing Your App for Success: Tips and Techniques for managing slow devices
44:31 MIN
Q&A on GraphQL, team structure, and vendor software
Building high performance and scalable architectures for enterprises
03:37 MIN
Using caching to manage slow network device responses
Challenges of building React and React Native apps
26:57 MIN
Q&A on sessions, features, and performance
Modern Headless Commerce with Vendure
26:59 MIN
The challenges of building GraphQL APIs with resolvers
Putting the Graph In GraphQL With The Neo4j GraphQL Library
36:35 MIN
Q&A on GraphQL, accessibility testing, and feature flags
Scalable architecture for mobile apps
Featured Partners
Related Videos
Rapid GraphQL API Development with PostGraphile
Ruwan Xaviour Fernando
GraphQL: Does it replace SQL, REST or Something Else?
Gregor Bauer
Putting the Graph In GraphQL With The Neo4j GraphQL Library
William Lyon
GraphQL + Apollo + Next.js: A Lovely Trio
Josh Goldberg
Rethinking Reactive Architectures with GraphQL
David Leitner
GraphQL Mesh – Why GraphQL between services is the worst idea and the best idea at the same time!
Uri Goldshtein
1, 2, 3... Fastify!
Matteo Collina
Things I learned while writing high-performance JavaScript applications
Michele Riva
From learning to earning
Jobs that call for the skills explored in this talk.
![Senior Software Engineer [TypeScript] (Prisma Postgres)](https://wearedevelopers.imgix.net/company/283ba9dbbab3649de02b9b49e6284fd9/cover/oKWz2s90Z218LE8pFthP.png?w=400&ar=3.55&fit=crop&crop=entropy&auto=compress,format)

Senior Software Engineer [TypeScript] (Prisma Postgres)
Prisma
Remote
Senior
Node.js
TypeScript
PostgreSQL
Proficient Software Engineer - Node - React - GraphQL (m/f/x)
Atolls
Berlin, Germany
MVC
NoSQL
React
Vue.js
NestJS
+8
Proficient Software Engineer - Node - React - GraphQL (m/f/x)
Atolls
München, Germany
MVC
NoSQL
React
Vue.js
NestJS
+8
Développeur Node React Graphql Senior H/F
Eleven Labs
Paris, France
Remote
Senior
React
Node.js
GraphQL
JavaScript
Senior Backend Engineer (TypeScript) [Prisma Postgres]
Prisma GmbH
Berlin, Germany
Remote
Senior
Go
API
NoSQL
Node.js
+4
Senior Backend Software Engineer (TypeScript)
Prisma Data, Inc.
Brussels, Belgium
Remote
Senior
Go
API
NoSQL
Node.js
+4




Backend Python - AWS - GraphQL (100% remoto)
knowmad Mood
Municipality of Madrid, Spain
Senior
Scrum
Python
GraphQL
Amazon Web Services (AWS)

