14.2.4 workers.properties (Worker definition file)
- Organization of this subsection
(1) Format
Specify the key as follows:
key-name=value
- Specification method
-
-
The string up to the linefeed is a value.
-
The line beginning with a hash mark (#) is a comment.
-
If you define a line without a value, the line is ignored. The parameters not defined as valid key names are also ignored even if defined in the action definition file.
-
Up to 1023 characters are valid as key-name=value. The part exceeding this number is truncated.
-
Single-byte alphanumeric characters, underscores (_), and hyphens (-) can be used in the worker name. The operations cannot be guaranteed if you specify other characters.
-
(2) File storage location
-
In Windows
Cosminexus-installation-directory\CC\web\redirector\workers.properties
-
In UNIX
/opt/Cosminexus/CC/web/redirector/workers.properties
(3) Functionality
The worker definition file defines the workers, sets the parameters for each worker, and defines the actions of the redirector.
(4) Specifiable keys
The keys that you can specify in the worker definition file and the parameters defined for each worker are explained below:
(a) Keys specifiable in the worker definition file
These keys define workers, and the parameters for each worker. If an invalid value is specified for this key, the operations might not execute properly.
Key name |
Contents |
Default value |
---|---|---|
Specify the list of worker names. In the case of multiple names, demarcate with a comma (,). You need to specify at least one worker name. Specify the worker name specified in mod_jk.conf (redirector action definition file for HTTP Server), or uriworkermap.properties (mapping definition file for Microsoft IIS). |
None |
|
Specify the parameters defined for each worker. Set the parameters for each worker coded in worker.list. For details on the defined parameters, see (b) Parameters defined for each worker. |
None |
(b) Parameters defined for each worker
Parameters that you can define |
Contents |
Default value |
Related information |
---|---|---|---|
Specify the list of workers for which load balancing is to be performed. In the case of multiple names, demarcate with a comma (,). |
None |
||
Specify an integer value from 1 to 2147483647 for the number of connections to the workers re-used in the redirector. Note that this parameter is used in Windows. When the number of connections to the workers is within the scope of the specified value, the connections remain in the redirector and are re-used for communication with the applicable workers without being released until the J2EE server at the connection destination terminates. If the multiplicity of requests exceeds the set value, for only those requests that exceed the set value, establish and release connections to workers for each request. This value uses up memory as per the following formula: (Expression) Memory consumption = (worker.worker-name.cachesize value)× 10KB |
64 |
||
Specify worker name of the default worker. If you specify a worker same as the worker specified in the POST request transfer destination worker, the requests satisfying the distribution conditions as per the POST data size and requests satisfying the conditions for the default worker are transferred to the specified worker. Note that if you specify a worker that is not specified in the POST request transfer destination worker in this parameter, and if worker.worker-name.post_data is specified in that worker, the definition of worker.worker-name.post_data is ignored. The null characters (space, tab, or form feed) before and after the worker name are ignored. If you omit this parameter or specify a null string, an error is returned for the request for which a worker satisfying the transfer conditions does not exist. |
None |
||
Specify the error status code that uses the delegation functionality of the error page. # If you want to specify multiple worker names, demarcate with a comma (,). |
None |
||
Specify the host name or the IP address of the worker. |
None |
||
Specifies the load balancing value of a request. Set a value greater than 0. You can also specify a decimal value. |
1 |
||
Specify an integer value from 1 to 65535 for the worker port number. You cannot specify a port number that is already being used or secured for another application. |
None |
||
Specify a value adding 1 to the maximum value of the Content-Length header value for the requests to be transferred to the worker specified in worker-name as follows:
The requests in which the value of the Content-Length header is lesser than the specified value is transferred to a worker specified in worker-name. If multiple workers are specified in the worker.worker-name.post_size_workers parameter, the request is transferred to a worker in which the request Content-Length header value is lesser than the specified value, and in which the value is the smallest specified value. If you specify the value in the worker.POST-request-distribution-worker's- worker-name.post_size_workers parameter, do not specify the same value as the other workers. The null characters (space, tab, or form feed) before and after the value are ignored. |
None |
||
Specify the list of worker names of the POST request transfer destination workers. If you want to specify multiple worker names, demarcate with a comma (,). You cannot specify the same worker name. The null characters (space, tab, or form feed) before and after the worker name are ignored. |
None |
||
Specify the communication timeout value. Specify an integer value (units: seconds) from 0 to 3600 for the time period to await the response data. If you specify 0, the system continues to wait until a response is received and a communication timeout does not occur. |
3600 |
||
Specify the worker type from the types shown below. For details on the parameters that you can set in each type, see (c) Parameters defined for each worker.worker-name.type. You need to specify these parameters for each worker.
|
None |
(c) Parameters defined for each worker.worker-name.type
Parameters that you can define |
Worker types |
||
---|---|---|---|
ajp13 |
lb |
post_size_lb |
|
worker.worker-name.balanced_workers |
N |
Y |
N |
worker.worker-name.cachesize#1 |
O |
N |
N |
worker.worker-name.default_worker |
N |
N |
O |
worker.worker-name.delegate_error_code |
O |
N |
N |
worker.worker-name.host |
Y |
N |
N |
worker.worker-name.lbfactor |
O |
N |
N |
worker.worker-name.port |
Y |
N |
N |
worker.worker-name.post_data |
N/Y#2 |
N |
N |
worker.worker-name.post_size_workers |
N |
N |
Y |
worker.worker-name.receive_timeout |
O |
N |
N |
(5) Examples of coding
worker.list=worker1 worker.worker1.port=8007 worker.worker1.host=localhost worker.worker1.type=ajp13 #worker.worker1.cachesize=64 #worker.worker1.receive_timeout=3600 #worker.worker1.delegate_error_code=400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,422,423,424,500,501,502,503,504,505,507,510 #---------------------------------------------------------------- # Example setting for Loadbalancer. #---------------------------------------------------------------- #worker.list=loadbalancer1 # #worker.loadbalancer1.type=lb #worker.loadbalancer1.balanced_workers=worker1,worker2 # #worker.worker1.port=8007 #worker.worker1.host=host1 #worker.worker1.type=ajp13 #worker.worker1.cachesize=64 #worker.worker1.lbfactor=1 #worker.worker1.receive_timeout=3600 #worker.worker1.delegate_error_code=400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,422,423,424,500,501,502,503,504,505,507,510 # #worker.worker2.port=8007 #worker.worker2.host=host2 #worker.worker2.type=ajp13 #worker.worker2.cachesize=64 #worker.worker2.lbfactor=1 #worker.worker2.receive_timeout=3600 #worker.worker2.delegate_error_code=400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,422,423,424,500,501,502,503,504,505,507,510 #---------------------------------------------------------------- # Example setting for post data size based worker. #---------------------------------------------------------------- #worker.list=postsizelb1#worker.postsizelb1.type=post_size_lb #worker.postsizelb1.post_size_workers=worker1,worker2 #worker.postsizelb1.default_worker=worker1 # #worker.worker1.port=8007 #worker.worker1.host=host1 #worker.worker1.type=ajp13 #worker.worker1.post_data=100m #worker.worker1.receive_timeout=3600 #worker.worker1.delegate_error_code=400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,422,423,424,500,501,502,503,504,505,507,510 # #worker.worker2.port=8007 #worker.worker2.host=host2 #worker.worker2.type=ajp13 #worker.worker2.post_data=2048m #worker.worker2.receive_timeout=3600 #worker.worker2.delegate_error_code=400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,422,423,424,500,501,502,503,504,505,507,510
(6) Precautions
If you change the user definition of the redirector by editing this file, you will need to restart the Web server. The changed definition will be applied after the Web server is restarted.