Osclass cache – Performance testing

Comparison of the average download time of Osclass 3.4 with cache (memcache) and Osclass 3.3.2 without cache simulating a constant user loading on both installations. Performance testing is an non-functional testing performed to determine how a system performs in terms of responsiveness and stability under a particular workload.

We will perform a Load/Capacity testing

A load test is usually conducted to understand system performance under a specific expected load.

This load can be the expected concurrent number of users on the application performing a specific number of transactions within the set duration.

The test will give out the response time of all the important business critical transactions.

We will make load testing using JMeter

Apache JMeter is an Apache project that can be used as a load testing tool for analysing and measuring the performance of a variety of services, focusing on web applications.

Our test plan:

We need to define these parameters:

  • Number of users ( This is the number of concurrent users we want to simulate )
  • Ramp-Up period (in seconds) (If 14 users are used, and the ramp-up period is 1 second, then JMeter will take 1 second to simulate all 14 users)
  • Loop count (how many times is executed)

We’ve added the following requests to be simulated:

  • Homepage
  • Search – Region Barcelona
  • Search – Category Cars
  • Search – Category Car Parts
  • Search – Category Animals

Osclass 3.3.2 vs Osclass 3.4 with memcache

Test note:

  • Unregistered users. ( no login is performed )
  • Simulates a constant traffic (14 or 58 users  browsing the web simultaneously)
  • 2 simulations, normal load (14 concurrent users) and traffic peak (58 concurrent users).
  • Target machine: 4 cpu + 8 Gb (digitaloceans vps)
  • 420.000 listings per installation.

Normal workload

Based on one month data

  • 300k unique visitors per month.
  • 640k page views per month.
  • 120 seconds

14 concurrent users in 1 sec ( 50 times ) 26.3% improvement from the previous version

High workload (peak of traffic)

Based on the data corresponding to a possible peak

  • 1,5k visitors in one hour.
  • 3,2k páginas vistas in one hour
  • 140 seconds

58 concurrent users in 1 sec (50 times) 31% improvement from the previous version NOTE: Factor between concurrent users and page views will vary depending on the site. A lower concurrence of users can generate more petitions in a site than another one with a lower amount of users. For this reason, knowing the server capacity to hold a given number of users may be enough or not, depending on the number of page views generated by users.