Slow Content-Manager in bigger Project

System Information
  • Strapi Version: 4.1.1
  • Operating System: macOS Monterey 12.1
  • Database: Postgres
  • Node Version: 14.7.5
  • NPM Version: ///
  • Yarn Version: 1.22.17

Hello everyone!

My team and me are facing some issues right now developing a rather “big” app with Strapi as our CMS at the moment.

We are importing a lot of data from an old system and now that the amount of data grows and grows and there are more and more relations to fetch data for etc. we noticed our admin panel, more specifically the content-manager become quite slow. The GraphQL API runs just fine and is super fast, so no worries there.

Right now some Collection-Types take around 3-8 seconds to load the edit view and take similar times to save, depending on how many relations need to be populated. We streamlined our relations so that there aren’t any unnecessary queries and it did speed up the loading times a bunch (like refactoring some many to many relations into a has many relations).

I have been digging around a lot but didn’t find anything that was of help. I found this old issue: which sounded promising, but seems to have been resolved in v4.

I tried to disable the compression, especially the brotli compression in the strapi::compression middleware, but it didn’t seem to take any effect.

Anyone got any Ideas? I’m certainly running out of them… :sweat:


Hello dear, I am facing the same issue now, were you able to resolve it ?

I think that the issue here will be that JS is single threaded, and using a database to deal with all the queries etc will be the bottle neck.

I used to work for a big company that had the same issue though this was V3 and we changed to Postgres from Mongo etc, and it did speed things up.
But we also required to have more pods to scale up the amount of work done. This also connected to multiple databases in sync to try serve things better.

Though I think sadly saying it’s a JS issue rather then strapi due been single threaded.

@Eventyret Seriously …! it is a solution… remove his tag man

I’m sorry, remove what tag i don’t understand what you are on about.