Finding and Fixing Server Bottlenecks Through Pre-Registration Server Profiling
Key point
To resolve an image generation bottleneck in the Cookie Run: Kingdom pre-registration service, the server was profiled using Artillery and Linux perf.
Details
The Cookie Run: Kingdom pre-registration's citizenship issuance event was a service that generated and provided cookie images in real time, with trillions of possible combinations. However, a problem arose where the image generation process consumed massive resources.
As a result of load testing using Artillery, performance was so poor that even 9 nodes with 2-core CPUs and 512MB of memory struggled to handle 10 RPS per second. The processing time per request reached about 1,400–1,600ms.
To find the bottleneck, profiling was conducted with Chrome Inspector, but there were limitations in analyzing low-level C code areas in detail, such as the Cairo backend used by the node-canvas library.
To solve this, a deeper level of profiling was attempted using Linux perf in a Docker container environment, tracing the bottleneck at the C level.
This summary was generated automatically by AI. Check the original for the author's claims and context. Copyright belongs to the original author.
Our guide explains how the AI works. Report summary errors, attribution issues, or removal requests via Contact.