Sunteți pe pagina 1din 3

dev-doc/batch-server.

md at master · Sage-ERP-X3/dev-doc Page 1 sur 3

#$$PRODUCT batch controller

Administration
Application/Contract Syracuse/Collaboration Class batchServers Representation batchServer
Page
 
A batch controller entity describes a batch configuration for a $$PRODUCT solution. There are several runtimes
synchronized with the runtimes set in the corresponding $$PRODUCT solution that identify $$PRODUCT servers. A batch
controller is responsible for driving batch requests that have been scheduled on $$PRODUCT application.

Information available for a batch controller


The batch controller instances are automatically created and synchronized with corresponding X3 solutions. The following
information must be entered for a $$PRODUCT batch controller:

Code
A unique code that identifies the batch controller. This field is in read-only mode and is synchronized with corresponding
X3 solutions code.

Auto start
If checked, the batch controller would be started at Syracuse web server start up, and would execute batch request all
solution's folders when necessary.

Status
The status informs about the batch controller status.

• Running when the controller is active and would execute queries regarding Time between two searches (sec)
setting.
• Stopped when the controller is not active and would not perform any action.
• Stopping when the controller is not active, but still waiting for pending queries to be stopped.

Time between two searches (sec)


When no tasks can be started at a given moment, either because the maximum number of simultaneous tasks has been
reached, or because no query is waiting execution, the batch server puts itself into wait mode for a number of seconds
defined by this parameter. Once this time has passed, the server re-verifies whether it is possible to launch one or more
tasks.
Therefore the value of this parameter influences the average time taken into account for a query (all other execution
conditions being equal). A time in the order of 30-60 seconds is generally advised (a shorter time can be selected but
this has a negative impact on server loading).
This setting can be modified only when the batch controller status is Stopped .

Timeout search time (sec)


A task having exceeded the execution duration quota that has been authorized is stopped by the server, but the effort in
verifying the execution duration for queuing tasks is quite heavy. It is therefore possible to define an interval in seconds
between two reads of this type. A minimum time between 1 - 5 minutes is usually sufficient, except in specific cases.
This setting can be modified only when the batch controller status is Stopped .

Maximum delay to launch a query (minutes)


This field allows the specification of the admissible delay (in minutes) for the start of queries. This delay is the time
measured between the moment upon which the task has been planned and the current time. Generally, the fact that the
number of current tasks equals the maximum number of possible tasks is the reason why there may be some delay.
A task which could not be started within the allotted time will be marked as Outside the time limits and is no longer
executed.
The delay can also be defined at the level of the task and this value takes priority.
If this field is equal to 0, and if the admissible delay indicated for the task is also equal to null, the task will never be

https://github.com/Sage-ERP-X3/dev-doc/blob/master/administration-reference/batch-... 20/04/2017
dev-doc/batch-server.md at master · Sage-ERP-X3/dev-doc Page 2 sur 3

considered outside the time limits.


This setting can be modified only when the batch controller status is Stopped .

X3 solution
Refers to the corresponding $$PRODUCT solution. This association is computed and set to read-only mode.

Administrative endpoint
Defines the Endpoint that will be used to get the list of queries to execute (administrative tasks). This is set by default
with the endpoint corresponding to the $$PRODUCT solution's mother folder.

User
Defines the User that will be used to get the list of queries to execute (administrative tasks). This is not set by default and
must be set manually before any usage of the batch controller. It is a mandatory setting because $$PRODUCT
connections need a $$PRODUCT user login.

Role
Defines the Role that will be used to get the list of queries to execute (administrative tasks). This is not set by default and
must be set manually before any usage of the batch controller. It is a mandatory setting because $$PRODUCT
connections need badges.

Locale preference
Defines the Locale that will be used to get the list of queries to execute (administrative tasks). This is set by default to
en-US . It is a mandatory setting because $$PRODUCT connections need locale preferences.

Runtimes
A $$PRODUCT solution can be accessed by several runtimes, so the corresponding batch controller can be configured to
use any runtime of the solution. If several runtimes exist, the load balancer will by default use a round-robin algorithm
that selects a runtime at connection time; but this algorithm can be changed according to the parameters associated
with the runtimes set in $$PRODUCT solution:

Server host
Server on which the runtime is installed. It can be a network name or an IP address. Here, this information is totally
synchronized with corresponding $$PRODUCT solution runtime server host and is set to read-only mode.

Server port
The port associated with the runtime. Here, this information is totally synchronized with corresponding $$PRODUCT
solution's runtime server port and is set to read-only mode.

Maximum no. active queries


This field makes it possible to define the maximum number of tasks which can be active simultaneously on the
corresponding $$PRODUCT solution's runtime. If this number is exceeded, the starting of the other pending tasks is
postponed. If set to 0, the runtime is ignored and not used to launch queries.

Server assignment
Runtimes set with Maximum no. active queries greater than 0 would be selected following a round-robin algorithm on the
eligible servers. A server is eligible if is not disabled or blacklisted in $$PRODUCT solution's runtime.

Some specific queries will automatically run only on the main server because of applicative needs. This is an automatic
assignment that does not require any configuration.

Some changes done on batch controller itself or on corresponding $$PRODUCT solution are directly applied on the fly and
taken into account by the batch controller execution :

• On X3 solution :

◦ If a runtime is banned/unbanned or disabled/enabled: the corresponding $$PRODUCT connection is set/unset in


batch controller rules that are currently applied.

https://github.com/Sage-ERP-X3/dev-doc/blob/master/administration-reference/batch-... 20/04/2017
dev-doc/batch-server.md at master · Sage-ERP-X3/dev-doc Page 3 sur 3

◦ If a runtime host/port is modified: the corresponding $$PRODUCT connection is removed and added again in batch
controller rules that are currently applied.

• On batch controller :

◦ If Maximum no. active queries is modified, the configuration is set in batch controller rules that are currently applied.

Services available
Several services available from the right panel:

Start
This service launches the batch controller execution. It will perform some administrative and recurrent tasks to ask to
$$PRODUCT supervisor to execute batch queries. These calls are performed every Time between two searches seconds.

Stop
This service stops the batch controller execution. It will perform some last administrative tasks in order to ask to
$$PRODUCT supervisor if some queries are still pending until no pending queries remain (except for recurrent queries).
During this process, the status will be set to Stopping waiting for pending queries end, and then to Stopped .

Stop all
This service stops the batch controller execution. It will perform some last administrative tasks in order to ask to
$$PRODUCT supervisor to abort every pending queries (including recurrent queries). During this process, the status will
be set to Stopping waiting for pending queries end, and then to Stopped .

List of queries
This service allows to see historical of batch queries. It allows to see their statuses, what runtime has been used to
execute each query and also different common properties.

Synchronize configuration
This service retrieve old configuration set in legacy batch server or initialize with default values the three following
properties :

• Time between two searches


• Timeout search time
• Maximum delay to launch a query

https://github.com/Sage-ERP-X3/dev-doc/blob/master/administration-reference/batch-... 20/04/2017

S-ar putea să vă placă și