← Back to Node.js performance maporm
🔁
Node.js Performance
N+1 Detection
Detect list queries that trigger one query per row.
Detailed Description
N+1 happens when one list query triggers one extra query for every item in the list. It is common in GraphQL resolvers, ORM relations, and loops with await inside.
Fix it with SQL joins, eager loading, batched loaders such as DataLoader, or endpoint-specific aggregate queries. Also track query count per request to catch regressions.
Mental Model
1 list query + N child queries = latency explosion
When To Use
- ->GraphQL resolvers perform too many DB calls
- ->ORM code loops with await inside
- ->Query count per request is high
Tools: DataLoader, joins, Prisma include, GraphQL resolvers
n-plus-one.js
Live Editor
Loading...
Output
Run code to see output...