QATestLab Conducted Performance Research of ELGG Framework

The target audience of this research is anyone who has products to be deployed on open source social networking platform ELGG, etc apart from developing such applications.

The main goal of this performance research was to identify how well application built on ELGG performed in relation to performance objectives.

Some of other goals of this performance research were:

  • Identify bottlenecks and their causes.
  • Optimize and tune the platform configuration (both the hardware and software) for maximum performance.
  • Verify the reliability of application under stress.

We used Mercury Loadrunner 8.0 tool for load scenarios. Load scenario development included: recording the selected transactions into virtual user scripts; parameterization of input data for the scripts, building any required verification points in the scripts, creating/configuring user groups, and assigning virtual user scripts to user groups.

After analyzing the user behavior in social networks, we created a model of user activity within a week.

User Activity Model

The main concepts of this model are:

  • 100% of users are active and post content
  • Each user posts 1 article to blog  per week
  • Each user posts 1 video  per week 
  • Each user uploads 1 file to repository per week
  • Each user posts 1 article to wiki per week 
  • Each user uploads 5 photos per week
  • Testing will be conducted on data for the year: 2*52 articles and 7*52 of other content (videos, photos and files) for each user 
  • Article will consist of 1000 words on average
  • Words are generated as a random sequence of letters of length 1-10 characters
  • Each article will have 10 comments (length of each comment 10 characters)
  • Each video/file/photo will have 2 comments (length of each comment 10 characters)

In this performance analysis we made a model of social network with content accumulated during 1 year.

We found out that different social networks have different number of active users depending on their popularity and niche audiences. So we created 3 different models: little, middle and large networks.

Little Network

In this case our model – is specialized narrow network with 500 monthly active users.

A=500

We assume that total number of visitors V=A*10=500*10=5000.

We assume that this number of users will give us 25 concurrent users (C) on average.

C=25.

Middle Network

In this case our model – is common network with 5000 monthly active users.

A=5000

We assume that this number of active users will give us 250 concurrent users (C) on average.

C=250.

Large Network

In this case our model – is large network with 50000 monthly active users.

A=50000

We assume that this number of active users will give us 2500 concurrent users (C) on average.

C=2500.

Expected Results

We expected that response time should not be greater than 7 seconds, server busy errors should not be more than 0.1% percent of the total response, transaction passed per second =>8 .