Worker task management

An executor manages the worker tasks on each cluster server with the appropriate role. In the base configuration, Guidewire assigns this functionality to the workqueue server role. Each server with the worqueue role creates one executor for each work queue on that server.

Each work queue executor periodically creates a worker. (The executor can also create a worker upon receiving a notification from the writer.) This worker checks the work queue for items to process. If necessary, the initial worker creates an additional worker if there is more work to process than it can handle. This new worker can also create a worker if there is still more work to process. After there is no more work to process, all active workers stop.

It is possible to control the maximum number of workers, for all work queues on a server, by setting the value of configuration parameter WorkQueueThreadPoolMaxSize in config.xml. It is possible to set this value individually on each PolicyCenter server in the cluster.