|
| unsigned int | servers = 20 |
| | Initial number of web servers.
|
| unsigned long | cycles = 100000 |
| | Clock cycles to simulate.
|
| unsigned int | minTask = 10 |
| | Shortest task time, in cycles.
|
| unsigned int | maxTask = 100 |
| | Longest task time, in cycles.
|
| double | arrivalRate = 0.45 |
| | Average new requests per cycle.
|
| double | waveAmplitude = 0.6 |
| | Traffic wave size, 0 (steady) to 1.
|
| unsigned long | wavePeriod = 0 |
| | Cycles per traffic wave; 0 disables the wave.
|
| bool | autoWavePeriod = true |
| | Use cycles / 4 (four busy/quiet waves) unless –wave-period is given.
|
| double | streamingShare = 0.35 |
| | Fraction of requests that are streaming ('S') jobs.
|
| unsigned int | queuePerServer = 100 |
| | Initial queue size = servers x queuePerServer.
|
| double | upperFactor = 80.0 |
| | Scale up when queue > upperFactor x servers.
|
| double | lowerFactor = 50.0 |
| | Scale down when queue < lowerFactor x servers.
|
| unsigned int | cooldown = 10 |
| | Cycles between scaling checks.
|
| unsigned int | minServers = 1 |
| | Lower bound on active servers.
|
| unsigned int | maxServers = 100 |
| | Upper bound on live servers.
|
| std::size_t | maxQueue = 0 |
| | Queue capacity; 0 means unlimited.
|
| std::uint32_t | seed = 412 |
| | Random seed (logged so a run can be repeated).
|
| std::vector< std::string > | blockedRanges {"45.0.0.0/8", "103.0.0.0/8"} |
| | Firewall CIDR ranges.
|
| bool | verbose = false |
| | Print every event instead of only status lines.
|
| bool | color = true |
| | Use ANSI colors on a terminal.
|
| bool | useSwitch = false |
| | Bonus: route P and S jobs to two load balancers.
|
| bool | interactive = false |
| | Ask for the main settings on standard input.
|
| bool | showHelp = false |
| | Print usage and exit.
|
| unsigned long | statusEvery = 0 |
| | Cycles between status lines; 0 chooses automatically.
|
| std::string | logPath |
| | File for the run summary (and events in verbose mode).
|
Every user-adjustable setting for one simulation run.
Values come from command-line options, interactive prompts, or both. The defaults reproduce the required 20-server, 100,000-cycle run.
Definition at line 21 of file Config.h.