Skip to content
Christopher Bradford edited this page Oct 17, 2018 · 6 revisions

Why Gatling

Apache JMeter and cassandra-stress already exist for testing Cassandra already so why create something new around Gatling?

Gatling (http://gatling.io) is a very powerful load testing framework built in Scala with the power of Akka and its Actor Model design. Like other tools Gatling provides the ability to use plugins to extend the features to different protocols including CQL, JMS and Kafka. The Gatling DSE Stress Framework project was created around the Gatling DSE Plugin (http://github.com/datastax/gatling-dse-plugin) leveraging the plugin architecture to make CQL and Graph simulations easier to develop.

Framework Structure

The Gatling DSE Stress Framework is structured in four parts:

  • Feeds: Generation of data to be inserted into DSE or used for queries
  • Actions: CQL/Graph Queries or Prepared Statements
  • Scenarios: A collection of Actions and Feeds
  • Simulation: A collection of Scenarios to be run

Feeds, Actions and Scenarios are setup to be created in a project as a modular component allowing for multiple uses across Simulations. Only one Simulation may be run at a time, but a Simulation can contain multiple scenarios making it possible to combine read/write load and cross table or keyspace queries to be run simultaneously.