In this tutorial we'll be using the RouteGuide example service that is part of the gRPC repository. In order to ensure that the service performs adequately, the (fictitious) product managers have defined the following performance requirements
- The service on average will have 50 clients using it and each client interacts with the service once every second
- The minimum response time of a method in the service is 300 msec. The maximum response time is 500 msec
- The service will have a peak workload from 10 AM - 1 PM. A maximum of 100 clients is connected to the service at this time.
- The service will be up 24 hours a day.
- Every 2 hours, the clients will connect the route guide service
In order to test this requirement.
The service will have a peak workload from 10 AM - 1 PM. A maximum of 100 clients is connected to the service at this time.
we'll create a Peak Load Test Scenario. Please see Load Test Scenarios for a description of the various test scenarios
- Create the Performance Test
- Configure the test with 100 Virtual users and Invoke Interval of 1 sec (or 1000 msec). If the RouteGuideService is called by client applications operated by people, then we can assume that these applications will start connecting to the service starting around 8 AM (opening hours of the office). That means that within a span of 2 hours (8 - 10 AM), the number of clients connected to the RouteGuideService will gradually increase from 0 - 100.
The key to modeling the above scenario in FINT is to the use the Incremental Load Type (see screenshot below). In order to gradually increase to 100 users within a span of 2 hours, we need to create a user every 72 seconds. The test period is from 8 AM - 1PM (5 hours or 18,000 seconds)
- Configure the request message
- Now you're ready to run the test! Click the run button ( )
Here's an example GIF that, in general, shows the steps to configure and run a performance test