In our performance tests, we currently use a "closed" workload injection model* which is characterized by a constant number of active users. The arrival rate of new users is dynamically adapted to system's performance because a new user only arrives when one of the active users finishes the scenario.
We should consider moving to an "open" injection model which is characterized by user arrival rate independent on system performance, for example using Gatling's constantUsersPerSec(rate) construct.
- more realistic workload
- It seems to be more difficult to find the exact value of arrival rate which can put enough pressure on the system and not trigger a "runaway" process where the number of active users steadily increases during the test.