Contact us

Performance 
Testing 

We will show and tell you what your architecture is capable of by performing comprehensive performance testing. 
Our expert team uses specialized tools to apply loads that mimic real user behavior, allowing us to determine your system's capacity and identify any bottlenecks or points of failure. 

What is it and why is it needed?

Performance Testing is testing for fault tolerance with a multiple increase in load.

To understand the reason why the infrastructure could not cope with the increase in traffic.

Emergency incident

Increase in attendance

To find out why organic growth in resource traffic slows down the site.

Project Acceptance

Make sure that the project, developed by a third-party contractor, is reliable and will withstand the planned loads.

Putting the new infrastructure into operation

To check the "margin of safety" of the new infrastructure before laying it out on combat servers.

Preparing for the high season

To be sure on the eve of a major promotion or sale that the site will cope with a surge in load.

When is load testing necessary?

1. Gather infrastructure bandwidth requirements

2. Formation of scenarios based on the analysis of user requests to the site / application

3. Selection of the most suitable tools for the needs of your project (JMeter,  Gatling, own development tools)

How is testing

4. Conducting several iterations of load testing, each of which will result in detailed recommendations for modifying the infrastructure

5. Preparation of a final report with information about the results of testing and recommendations for correcting problems

Monitoring and visualization systems

Prometheus, Grafana, TICK Stack, Zabbix, Nagios, Icinga, DataDog, NewRelic

PagerDuty, Amixr

Incident Management Systems

Logging, error tracking

ELK, EFK, Grafana Loki, Graylog, Sentry

Tracing systems

Jaeger, Zipkin

Web, ingress and application servers

Nginx, Envoy, Linkerd, Traefik, Apache, HAProxy, Jetty, Tomcat, NodeJS

Programming languages

Python, TypeScript, JavaScript, Go, Java, PHP, Ruby, Erlang

Cloud platforms and services

Amazon AWS, Google Cloud Platform, Microsoft Azure, Rackspace

Containerization systems

Docker, CRI-O, LXC, LXD

Orchestration systems

Kubernetes, Nomad, Docker Swarm, RedHat OpenShift, Mesos/Marathon

Automation systems, CI/CD

Jenkins, Gitlab CI, CircleCI, Travis CI, Bitbucket Pipelines, TeamCity, GoCD, ArgoCD, Spinnaker

Cloud automation systems, CI/CD

AWS CodePipeline, AWS CodeDeploy, AWS CodeCommit, Google CloudBuild, Spinnaker

Cloud databases

AWS RDS and other DBs, Google Cloud SQL and other DBs, Firebase, MongoDB Atlas

Technologies we use

Scale services to more servers

+

Build database indexes and optimize queries

+

Adjust settings to increase bandwidth

+

What do you get as a result?

A report that will change your project for the better. It contains information about the detected problems and recommendations for their elimination. The report will help you:

Result

Contact us

+

Change the service interaction scheme

Optimize application logic

+

Implement a new deployment scheme

+

Team and price

From two weeks

What does it depend on

Affect the final cost of the service the following infrastructure settings:

Deadline

Software stack

Number of testing iterations

Emulated load types

Number of nodes

Who will be on the team

Each time we form a team individually. The number of allocated specialists depends on the infrastructure parameters. But the team always includes:

Project manager

DevOps engineer

System architect

Monitoring Systems Specialist

Project tech lead

Technical writer 

Ecommerce site testing

Sample case

Procedure:

The first iteration - we conduct testing, indicate bottlenecks, draw up a primary report

Scenarios: Anonymous traffic to pages, the passage of the main business process completely (for example, ordering a product or service), registration, work under a registered user.

The second iteration - the customer makes changes according to the recommendations of the primary report, we finalize the scenarios, conduct testing

Final iteration - we draw up a final report describing the results of each stage and provide recommendations for further (non-critical) optimization of the infrastructure.

Examples

ETL throughput testing/database stress testing

Atypical case

Procedure:

We carry out the required number of load testing iterations according to the input from the customer and issue the final results and a report to the client.

Scenarios: Measuring the ability of a system to handle a given number of requests. If the system has a rest api, testing is done using jmeter.

The number of iterations depends on the characteristics of the project and the tasks of the customer and is always determined individually.

+ Additional options

Testing the system from inside a closed loop

includes the organization of the stand and the installation of load testing tools inside the circuit.

for each additional iteration carried out at the request of the customer.

Fourth and subsequent testing iterations

Setting up monitoring 
(if it is not available)

installation and configuration of monitoring that captures the consumption of resources and the use of services.

Development of technical specifications for changing the infrastructure based on the results of testing

You can make the necessary changes yourself or entrust it to our team of engineers.

It turns out that after each accident it is necessary to carry out such an expensive procedure?

Performance Testing, which is carried out after an accident or failure, is aimed at finding their causes. In the report received as a result of testing, you will find not only information “why this happened”, but also recommendations “how to fix everything”. And the number of critical incidents as a result will be many times reduced.

Questions and answers

Is it really necessary to carry out load testing before each significant update of the system?

It all depends on the complexity of the system and the amount of losses that you incur in the event of a long downtime. In our report, you will see the potential “weak points” of the infrastructure. And you can either correct them, or, if the current architecture does not allow this, pay attention to them when rolling out an update and monitor specific indicators.

So, now marketers will not blame IT people for not preparing the site for their super promotion, and IT specialists will not blame marketers for not warning them about the super promotion?

Load testing does not guarantee a 100% impact on the team, but usually the degree of friendliness and the degree of positive after it grow significantly!

What should I do if the problems identified by my specialists cannot be quickly eliminated on their own?

Our product, in this case, is a report with information on the state of the system and recommendations for eliminating “weak spots” and improving fault tolerance. But we are ready to carry out these works by our specialists, if you have such a need.

lLoad Testing. It consists in determining the performance and response time of the information system in response to an external request. The task of load testing is to find out whether the performance of the system meets the requirements set when it was created.

Load testing

Performance testing

Performance testing. It is carried out to determine the speed of the information system or its components under a certain load.

Downtime period

Service downtime/downtime. The longer the downtime, the higher the business loss. The task of load testing is to reduce the time of unavailability to a negligible value or complete zero.

Useful terms

Tell us about your setup and we'll tell you how we can help


sales@crazyops.io

We build performance

Terms and conditions  ◦  Privacy policy ◦ Cookie policy   
© 2023 CrazyOps Ltd. All rights reserved