Skip to content

Load Testing Blog

Elasticsearch: Snapshot Backups on a Shared NFS

Disasters can happen. We experienced data loss on our Elasticsearch cluster a few weeks ago after a failed upgrade. That's why data redundancy isn't enough: even when you data is replicated on multiple nodes, your data isn't safe!

Backuping your elasticsearch cluster is another layer of security in case things go wrong:

  • Failed Upgrade: in our case, that's what happened. The data was upgraded but elasticsearch was unable to read it. Several nodes had corrupted data,
  • Intrusions: what if a hacker gains access to your database,
  • Multiple node failures: data is usually replicated on 1+ nodes, but what if several nodes fail simultaneously? It's highly improbable, that's true.

This tutorial is going to explain how we use a shared Network File System connected to all our Elasticsearch nodes to save incremental snapshots of the database every night. Let's see how we can leverage NFS to store Elasticsearch snapshots.

Extend OctoPerf results with Instana

Today we have a look at the added value you get by using a combination of load testing and APM. Our tool of choice at OctoPerf is Instana, because we share a lot of common values. To put it short we both have a huge focus on ease of use and docker oriented platforms. I think it makes this collaboration even more relevant for our users.

Anyway, as you probably know OctoPerf is oriented toward running realistic tests as easily as possible. And Instana will get you live insight about your entire platform allowing you to instantly understand the consequences of your load test. This blog post is a collaboration with folks at Instana and you can find the second part whith a detailed analysis of the test on their blog.

JMeter If Controller

You may ask yourself:

  • How can I script Thread groups with dynamic behavior?
  • How to use the JMeter If Controller to leverage conditional behavior?

Good News! We're going to show you the JMeter If Controller by introducing you to conditional statements, advanced conditions and performance considerations.

Use-Cases

The If Controller works great when you need to execute some elements of the Thread Group based on a given state. Let me give you meaningful examples:

  • If the shopping cart is empty, then execute Add a New Product to Cart,
  • If Account balance is below Zero, then Issue a wire transfer to rebalance the Account.

Depending on a given condition, then a given action is taken. That's it!

Performance Test Strategy

A long time ago, Quality Assurance was executed after development. Performance testing was an activity executed when software was ready for production.

If a performance issue was found, most companies:

  • Fix the issue which means a complete new cycle including QA Tests and performance tests are required,
  • Or put the software live and decided to fix it as part of ongoing development,
  • Or borrow from the future. That's technical debt.

Let’s be fair: this approach isn't optimal.

The root cause is performance testing is not considered viable until the software reached a certain level of maturity.

The DevOps approach is exactly the opposite: performance test early.

It is known as shift left performance testing and it works it just needs Quality Assurance teams to think a little differently when it comes to performance testing and to have a performance test strategy in place to support shift left performance testing.

Let’s explore how to integrate load testing as part of your software development strategy.

OctoPerf 10.4.0 - Better Insights on Errors

We've received a lot of feedback around the way we report errors during the tests. First we only stored the first 100 errors per load generator to avoid having too many. And because of this, many of you were not able to analyse issue happening after a while. This can be frustrating if you want to understand what's going on at that stage. That's the reason behind the two main features of this release:

Improvements

Area chart

It does not only work for errors but it's probably going to be the main use case. This new addition to the report items family will show the percentage/count of the various HTTP/S codes over time:

Area chart