100 Users Log In at Once and Your API Dies — The bcrypt Bottleneck Nobody Warns You About
Login load tests at 100 VUs timed out on Kubernetes. A single bcrypt.compare took 6 seconds. UV_THREADPOOL_SIZE wasn't enough. We fixed it by moving bcrypt out of the HTTP server into a NestJS native script.