API rate limit issue in production since 4.10.x

System Information
  • Strapi Version: 4.10.x
  • Operating System: Windows Server 2016
  • Database: MySQL
  • Node Version: 18.13.0
  • NPM Version: 9.6.7
  • Yarn Version: 1.22.19

Since 4.10.x, I am experiencing a rate limit kind of issue in my production server. Whenever my NextJs frontend calls multiple strapi api at the same time, my strapi server will stop responding for around 1 minute, and then allow another few requests until it stop responding again. Below is the logs of the strapi server, my frontend server call these api consecutively, but there are two 1 minutes gaps between these calls.

[2023-05-24 09:40:42.132] http: GET /api/abc/123 (79 ms) 200
[2023-05-24 09:40:42.149] http: GET /api/users/me (119 ms) 200
[2023-05-24 09:40:43.033] http: GET /api/def (970 ms) 200
[2023-05-24 09:41:44.438] http: GET /api/abc/123 (61 ms) 200
[2023-05-24 09:41:44.449] http: GET /api/users/me (81 ms) 200
[2023-05-24 09:41:45.352] http: GET /api/def (979 ms) 200
[2023-05-24 09:42:47.888] http: POST /api/auth/local (239 ms) 200
[2023-05-24 09:42:47.989] http: GET /api/ghi (31 ms) 200

All things get back to normal when I downgrade strapi back to 4.9.2. This only happen since 4.10.x. I tried to delete node_modules and .cache folder and deploy again, still having the same issue. I also tried to play with the rate limit config of the user plugin, nothing change. Anyone have any idea why this is happening? Please help :sob: