Analysis of information sources in references of the Wikipedia article "Gatling (software)" in English language version.
"Simulation" is the actual test. It is a Scala class that extends Gatling's io.gatling.core.scenario.Simulation class. Simulation has a HTTP Protocol object instantiated and configured with proper values as URL, request header parameters, authentication, caching, etc. Simulation has one or more "Scenario".
Scenario is a series of HTTP Requests with different action (POST/GET) and request parameters. Scenario is the actual user execution path. It is configured with load users count and ramp up pattern. This is done in the Simulation's "setUp" method. Several scenarios can form one simulation.
It is capable of creating an immense amount of traffic from a single node.
Gatling consumes fewer system resources to run a load test than other options.
It is an easy-to-install tool where simulations and scenarios are coded in a simple domain-specific language (DSL).
You can thus generate readable and easy to maintain performance test code.
The language, Scala, and Gatling's DSL are pretty focused on facilitating the maintainability of the tests, which is ideal if you are focusing on continuous integration
As the core engine is actually protocol agnostic, it is perfectly possible to implement support for other protocols.
The 'BSD-like' licenses such as the BSD, MIT, and Apache licenses are extremely permissive, requiring little more than attributing the original portions of the licensed code to the original developers in your own code and/or documentation.