Sustained Load Test Reveals n8n Stability, System Bottlenecks

A recent load test on a self-hosted n8n instance running on a bare-bones Google Cloud VM has demonstrated the platform's resilience under sustained, elevated usage. The test, conducted over nearly five hours, subjected a free-tier e2-micro instance (1 GB RAM, 0.25 vCPU, 2 GB swap) to a continuous rate of one automation event every five seconds. This rate is approximately 136 times the instance's normal daily load, pushing the system to test for degradation or memory leaks over an extended period.

The primary goal was to assess how the automation platform would perform under a realistic, albeit increased, sustained workload, moving beyond simple burst tests. The test involved 2,880 events over 4 hours and 42 minutes, with host telemetry sampled every 15 minutes. Crucially, the test confirmed that no critical components failed and the automation workflows continued to execute without interruption.

The setup itself is noteworthy. The n8n instance lives on a Google Cloud e2-micro VM, which is part of Google's free tier, costing $0 per month. This machine typically handles around 108 events per day, or roughly 4.5 events per hour. The instance has been operational since July, indicating a baseline level of stability even before this specific test.

The sustained load test, while not a peak throughput benchmark (e.g., 50 events per second), effectively probed the system's ability to maintain performance over hours. This is a critical consideration for any production deployment, where consistent, long-term operation is paramount.

Unexpected Latency Source: Apt

While the n8n platform itself performed admirably, the telemetry data revealed an unexpected source of latency: the Advanced Package Tool (apt). During the sustained load test, the system experienced periodic spikes in latency that correlated with background apt operations. This suggests that even on a system with low overall resource utilization by the primary application, system-level package management processes can introduce significant performance degradation.

The observation is counterintuitive. One might expect the primary application, n8n in this case, to be the bottleneck under load. However, the data indicates that background system processes, such as package updates or cache management performed by apt, can consume system resources in a way that impacts the responsiveness of other applications. This is particularly relevant for self-hosted deployments on minimal infrastructure, where every CPU cycle and I/O operation counts.

The implication is that developers and operators managing self-hosted automation tools on constrained environments need to be acutely aware of not just the application's resource consumption, but also the background activities of the operating system. Scheduled apt operations, or even manual package management during critical periods, could silently degrade performance.

Infrastructure and Configuration Details

The test harness, responsible for generating webhook events and measuring performance, also resides on the same $0/month Google Cloud e2-micro VM. This co-location means that the VM was handling both the event generation and the n8n processing. The normal operational load for this instance is about 4.5 events per hour, and it has been running since July, demonstrating its long-term viability for low-volume tasks.

The sustained load test specifically aimed to address criticisms of previous burst tests, which did not reflect the reality of continuous operation. By holding one event every 5 seconds for an extended duration, the test provided a more robust measure of system stability and resource management over time. The sampling of host telemetry every 15 minutes allowed for detailed correlation between application performance and system metrics.

The scale caveat is important: 0.17 events per second, while 136x the normal rate, is still a modest throughput. The test was designed to detect subtle performance degradations or resource leaks that might manifest over hours, rather than to push the system to its absolute throughput limit. This focus on long-duration stability is crucial for understanding the practical limits of low-cost, self-hosted solutions.

Future Considerations and Broader Implications

This test highlights a critical aspect of managing self-hosted applications on minimal infrastructure: system overheads matter. While n8n proved itself capable of handling sustained loads far beyond its typical usage on a free-tier VM, the unexpected latency introduced by apt suggests that a holistic view of system resource usage is necessary. For teams relying on self-hosted automation, this means considering not only the application itself but also the OS, scheduled tasks, and background services.

The surprising detail here is not that n8n is stable, but that a seemingly innocuous system tool like apt can become a significant performance bottleneck. This raises a question: what other common system utilities or background processes might silently degrade the performance of critical applications on resource-constrained servers?

For developers using n8n, the takeaway is that while the platform is robust, ensuring a clean, well-managed operating system environment is key to achieving optimal performance, especially when operating on limited hardware. It suggests that proactive system maintenance, potentially disabling unnecessary background services or scheduling apt operations outside of peak application usage times, could be beneficial.

This experiment underscores the trade-offs involved in self-hosting. While cost savings are significant, the responsibility for maintaining system health and performance shifts entirely to the user. Understanding these system-level interactions is vital for anyone seeking to run complex applications reliably on a budget.