3 ms·
I’ve experienced a lot of n+1 queries problems as causes for bad performance. Often times this was a result of wrapping the ORM in abstraction layers (for busin
by syastrov 8y ago
I’ve experienced a lot of n+1 queries problems as causes for bad performance. Often times this was a result of wrapping the ORM in abstraction layers (for business logic and fears of being “locked in” to the ORM). We rewrote that part of the application using a different ORM (in Python). Making use of a tool that could help find these problems automatically helped greatly and we didn’t have a single performance problem when we went into production the rewritten service.
This module can detect the n+1 queries problem automatically in Python ORMs:
https://github.com/jmcarp/nplusone https://github.com/jmcarp/nplusone
Looking forward to seeing more automated tools like this in the Python/Django world.
- itsderek23 8y agoScout also detects these for Django, ordering by the most performing N+1s: http://blog.scoutapp.com/articles/2018/04/30/finding-and-fixing-n-1s-in-django-apps http://blog.scoutapp.com/articles/2018/04/30/finding-and-fix...
- sut-123 8y agoAnd bullet is used for Rails to detect N + 1 queries. https://github.com/flyerhzm/bullet https://github.com/flyerhzm/bullet