Abbreviations, used in manual:
EF - Execution Flow
How to add additional servers to be slave nodes
Quilliup supports a scale-up architecture by adding multiple Tomcat engine servers (multi-instance setup) that share the same metadata repository. These additional servers act as slave nodes, monitoring the execution queue and helping process tests once the queue is loaded.
Note: Slave nodes are supported for run_qp.exe commands (Windows) only.
Configuration File
Path:
To enable High Availability (HA):
Rename the configuration file to:
run_qp.exe.configEnsure that
run_qp.exe.configis located in the same directory asrun_qp.exe, especially when executing commands from a remote server.
Configuration Parameters
available_servers – List of server URLs, separated by commas.
timeout_retries – Number of retries if a ping/remote call fails due to timeout (independent of
alternate_each_server).alternate_each_server – Defines how often Quilliup switches between servers while all servers are available:
1→ switch servers every command2→ switch servers every two commandsetc.
From version 2.7.2, this parameter can include multiple values (comma-separated), matching the number of servers in
available_servers.
ping_timeout – Number of seconds to wait for a response when verifying if a server is available.
current_index – Index of the server currently in use, relative to the
available_serverslist.current_index_use – Number of consecutive times the current server was used.
⚠️ The application must have read/write permissions for this folder to allow creation and modification of these files.
Example – run_qp.exe.config (the file should be defined in one/main instance only, no need to configure it within other instances):
<?xml version="1.0"?>
<configuration>
<startup>
<supportedRuntime version="v4.0"/>
</startup>
<appSettings>
<add key="available_servers" value="http://192.168.50.138:8080,http://192.168.50.92:8080" />
<add key="timeout_retries" value="2" />
<add key="alternate_each_server" value="5,3" />
<add key="ping_timeout" value="3" />
<add key="current_index_use" value="0" />
<add key="current_index" value="0" />
</appSettings>
</configuration>- Command Execution Example:
run_qp.exe -u "http://192.168.50.138:8080" -a "YWRtaW5AUURtaW4=" -f "2974645" –dhttp://192.168.50.138:8080→ main instance-f "2974645"→ EF containing 5 Tests
Execution behavior:
Quilliup first attempts the primary instance (
192.168.50.138).If it does not respond within 30 seconds, Quilliup automatically tries the next server (
192.168.50.92).This process continues until an available server is found.
- Load Distribution Example :
With the following configuration: <alternate_each_server> = 5,3
The first 5 commands run on
SERVER1 (192.168.50.138)The next 3 commands run on
SERVER2 (192.168.50.92)Rotation continues in this pattern.
Important: Each run_qp command is treated as one process, regardless of whether it executes an EF (with multiple tests) or a single test.
Comments
0 comments
Please sign in to leave a comment.