Is it okay even with 1,000 users? — ERPNext Load Test Results Report

We've published the results of our actual tests on ERPNext's concurrent connection performance. The analysis of response time, throughput, and bottlenecks will help you determine if it's suitable for your company's scale.

10 min

ERPNext load testing with Eye-Catch

1. Introduction

For companies considering implementing ERPNext, "How many people can use it at the same time?" "How long does it take to get a response?" This is a point of great interest to me.

Knowing the system's processing power makes it easier to determine the necessary server specifications and future expansion plans. This time, we used a near-minimum configuration environment, ConoHa VPS (4 cores/4GB), to actually perform a load test.

The purpose is to determine "how many simultaneous users a small business can comfortably use when implementing ERPNext?"


2. Test Environment

The tests were conducted in the following environment.

  • Server: ConoHa VPS 4core / 4GB memory
  • OS: Ubuntu 22.04 LTS
  • App: ERPNext v15 (Frappe Framework v15)
  • Client: Running ab/wrk from a local PC (WSL2 Ubuntu)

A "client" is a PC that sends test requests. We generated a large volume of traffic from this PC and measured the response time returned by ERPNext.


3. Testing Method

We used two different load testing tools.

  • ApacheBench (ab) A certain number of requests are sent simultaneously, and the average response time is measured for each number of simultaneous connections.

  • wrk Check the latency distribution (what percentage of the time it takes and for how many seconds) and the number of timeouts.

The target is the homepage (/) of ERPNext. The tests were conducted assuming 10 / 20 / 30 / 40 / 50 simultaneous connections.


4. Test Results

ApacheBench (ab) test results

4-1. ApacheBench (ab)

The results of ApacheBench are as follows:

Number of concurrent connectionsRequests/secAverage response time (ms)95% response time (ms)Maximum response time (ms)
109.1110115441963
2012.8155719602441
3012.4242937809566
4013.9287435275021
5014.0356238865001

👉 Up to 20 people, it's stable and comfortable at around 1.5 seconds. 👉 When the number of users exceeds 30, the response time worsens to an average of 2 seconds or more, and in some cases, response delays of nearly 9 seconds occur. 👉 With 50 users simultaneously, the response time drops to 3-4 seconds, which is considered "slow" for a business system.


4-2. wrk

The wrk measurement, including the number of timeouts, yielded the following results:

Simultaneous connectionsAverage latencyMaximum latencyRequests/secTimeout
201.35 seconds1.88 seconds14.50
301.83 seconds2.00 seconds14.4238 items
501.37 seconds1.74 seconds14.3413 items

👉 Requests/sec plateaus at approximately 14 requests/second. 👉 Timeouts increase significantly when the number of participants exceeds 30. 👉 With 50 users, over 400 timeouts occurred.


Conclusion: ERPNext in a ConoHa VPS (4core/4GB) environment is
The maximum comfortable capacity is 20 people using it simultaneously.
When the number of users exceeds 30, response delays and timeouts occur.

Even with 50 simultaneous users, the server itself did not crash. While stability is high, it appears that throughput has reached its limit.


6. Summary

The following three points were revealed from this load test:

  1. For ConoHa VPS (4 cores/4GB), approximately 20 users is a reasonable guideline for comfortable operation.
  2. When the number of users exceeds 30, the response time deteriorates to more than 2 seconds, and timeouts also occur.
  3. The server is highly stable, but its processing performance is capped at approximately 14 requests/sec.

When considering environments with high business peaks or frequent simultaneous use, the following measures are necessary:

  • Increase the server's CPU and memory
  • Adjust the number of workers and cache settings in ERPNext.
  • Scale out using a multi-server configuration.

7. Scaling Up ConoHa VPS

This test was conducted with the minimum configuration of "4 cores / 4GB". Therefore, the result was that "20 people is a comfortable guideline," but ConoHa VPS is characterized by its ability to flexibly scale up according to the use and scale.

  • You can switch to a higher plan for vCPU and memory.
  • Disks can be used as is, resulting in low migration costs.
  • Easily operated from the administration screen

👉 Initially, we'll use a "4-core / 4GB" configuration to keep costs down. 👉 If the number of users increases, we will expand to "8 core / 8GB" and even higher specifications. This approach is realistic and recommended.


Concluding remarks

For small-scale use, even the minimum configuration of ConoHa VPS is sufficient. However, scaling up is essential if you anticipate simultaneous use by more than 30 people.

To ensure the smooth operation of ERPNext, planned expansion of server resources is essential.

📚

Related articles