Please be aware that there is newer version of documentation available for Webswing. Documentation 25.2
Auto-scaling Configuration
Auto-scaling Configuration is support only via Cluster Deployment
| Admin console label | Config field Id | Description | Default value | Type | Variable replacement | 
|---|---|---|---|---|---|
| Enabled | enabled | Enables auto-scaling service. | false | boolean | |
| Home Folder | homeDir | Scaling home directory. This will be the base directory of any relative classpath entries specified. | ${user.dir} | String | ✅ | 
| Max Session Pools | maxSessionPools | Maximum number of session pools in cluster. Auto-scaling service will not upscale over this number. It is allowed to surpass this number manually. Set to -1 for infinite. | int | ||
| Min Session Pools | minSessionPools | Minimum number of session pools in cluster. Auto-scaling service will not downscale below this number. It is allowed to go below this number manually. Setting to lower than 1 is not recommended. | 1 | int | |
| Start Session Pool Script | startSessionPoolScriptPath | Path to script that starts a new session pool. | String | ✅ | |
| Start Session Pool Arguments | startSessionPoolScriptArgs | Arguments for script that starts a new session pool. To provide an auto-generated session pool id (e.g. auto-sessionpool-{n}) use ${sessionPoolId} variable. | String | ✅ | |
| Start Session Pool Timeout | startSessionPoolScriptTimeout | Specifies how long (seconds) will the scaling service wait for the start script process to finish. After the timeout the script process will be forcibly destroyed. | 300 | int | |
| Stop Session Pool Script | stopSessionPoolScriptPath | Path to script that stops a session pool. | String | ✅ | |
| Stop Session Pool Arguments | stopSessionPoolScriptArgs | Arguments for script that stops a session pool. This should be targeted at a concrete session pool, use ${sessionPoolId} variable for id. | String | ✅ | |
| Stop Session Pool Timeout | stopSessionPoolScriptTimeout | Specifies how long (seconds) will the scaling service wait for the stop script process to finish. After the timeout the script process will be forcibly destroyed. | 300 | int | |
| Scaling Algorithm Module Class Path | scalingAlgorithmClassPath | Additional classpath for built-in scaling algorithm module or for defining custom scaling algorithm module. | List<String> | ✅ | |
| Auto-scaling Session Pool Algorithm Module | autoScalingSessionPoolAlgorithmModule | Select one of built-in modules or enter full class name of custom auto-scaling algorithm module (has to implement org.webswing.admin.server.services.autoscaling.AutoScalingSessionPoolModule interface). Note the class and its dependencies has to be on classpath defined above. | DEFAULT | String | |
| Auto-scaling Session Pool Algorithm Config | autoScalingSessionPoolAlgorithmConfig | Session pool auto-scaling module specific configuration. | DefaultAutoScalingSessionPoolModuleConfig | 
DefaultAutoScalingSessionPoolModuleConfig
| Admin console label | Config field Id | Description | Default value | Type | Variable replacement | 
|---|---|---|---|---|---|
| Min Free Instance Slots | minFreeInstanceSlots | Number of minimum free instance slots in all session pools combined. If there are less free slots than this number a new session pool is started. All session pools must have explicitly set sessionPool.maxInstances property. | 5 | int | |
| Max Free Instance Slots | maxFreeInstanceSlots | Number of maximum free instance slots in all session pools combined. If there are more free slots than this number a session pool with most free slots is downscaled - first set to DRAIN_AUTO mode and stopped after last instance exits. All session pools must have explicitly set sessionPool.maxInstances property. | 10 | int | |
| Minimum UpDown Interval | minUpDownInterval | Minimum time that should pass between a consecutive upscale -> downscale action (in seconds). Consecutive multiple upscales and downscales are allowed without limit. Set to -1 or 0 to disable. | 60 | int |