Specialized Administration > Supporting Visualization and Publishing > Getting Started with Windchill Visualization Services > Configuring Publisher Queues > General Flow of Publisher Queue and Worker Agent Configuration
  
General Flow of Publisher Queue and Worker Agent Configuration
Configure Publisher Queues by performing the following steps:
1. Calculate the number of Publisher Queues you need for optimal publication
2. Configure additional Publisher Queues
3. Set Publisher Queue priority
4. Configure Publisher Queue and Worker availability
5. Configuring Dedicated Publisher Queue Sets and Worker Sets
To get started with the configuration process, continue to the next section.
Calculating the Number of Publisher Queues
The quantity of numbered Publisher Queues is important for balancing the publishing load because it allows WVS jobs to be processed in parallel across multiple queues. As a general rule, you need at least the same number of processing queues as the number of CAD workers configured. However, the actual number required depends on many factors and can be adjusted based on analysis of the publishing statistics.
For more information on sizing your publishing system, see Sizing a Visualization Publishing System.
You can then monitor your publishing system using the WVS Job Statistics tool, and make adjustments accordingly. See WVS Job Statistics for more information.
To configure additional numbered processing queues, continue to the next section.
Configuring Additional Publisher Queues
To configure additional numbered processing queues, follow the steps below:
1. Create the required new numbered processing queues using the Windchill Queue Management utility.
a. Click New Queue. The New Queue dialog box opens.
b. Next to Name, enter the name of the new queue.
c. Next to Type, select Process from the drop down menu.
d. Under Enabled, select Yes.
e. Next to Execution Host, type Default.
* 
If multiple Background Method Servers are configured, set the queue group to the defined WVS group.
f. Next to Failure Retries, enter the number.
g. Next to Suspend Duration, enter the number.
h. Select OK. A new numbered queue is created.
WVS starts to use this queue right away.
By default, Windchill is set up to delete all information for completed publish jobs that are processed in any queues other than PublisherQueue1 and PublisherQueue2.
If you want to remove the completed queue entries, you are done.
If you want to keep the WVS Job Details logging information for additional queues in any queue set, continue on to Step 2.
2. Configure Windchill to retain completed WVS Job details.
a. For each additional processing queue, use the xconfmanager command to add the required removeCompleted properties to the wt.properties file.
For example, to prevent deletion of completed jobs from the first queue in the Publisher Queue Set “PROE”:
xconfmanager -t codebase/properties -s
"wt.queue.removeCompleted.PublisherQueuePROE1=false"
b. Propagate the changes by executing the xconfmanager -p command.
3. Restart the Windchill Method Servers in order to reload the updated wvs.properties settings.
For more information on the properties that configure retaining or removing completed queue entries, refer to Tech Support knowledge base article CS32811.
Setting Publish Job Priority
Use the prioritized Publisher Queues to help you define some simple rules for the order of jobs. You can set the target prioritized Publisher Queue for a WVS Job related queue entry based on the WVS job’s type and source. For a list of WVS job types and sources see PUBLISHER SETTINGS in the wvs.properties.xconf file.
Configuring the target prioritized Publisher Queue, consists of the following main tasks:
1. Decide the relative priorities (High, Medium or Low) of the WVS Job type and source combinations.
2. Assign the chosen priorities by setting a job’s respective type and source in the wvs.properties file.
For example, to configure CAD Documents (Type 1) published from a manual check-in (Source 1) at a high priority, set the following xconfmanager command:
xconfmanager -t codebase/WEB-INF/conf/wvs.properties -s
"publish.publisherqueue.priorities.1.1=H"
For more information on setting job priority, refer to Tech Support knowledge base article CS28472.
3. Propagate the changes by executing the command xconfmanager -p.
4. Restart the Windchill Method Servers.
Using a Custom Filter Method
If the job source and type does not provide the required level of control when setting the priority, use a custom filter method. You can explicitly set the WVS Job priority and Publisher Queue Set using a custom method to implement you own business rules.
The custom filter method is configured using the publish.publishqueue.priorities.filtermethod property in the wvs.properties file and is invoked when a Publisher Job is submitted. The filter method returns the priority and Publisher Queue Set to use for the publish job. If defined, the custom method is always used instead of the publish.publishqueue.priorities.<type>.<source> properties.
For more information on the filter method, see the Filter Method section in Using Dedicated Publish Queues.
In addition to defining the rules for the order of jobs, you can also increase publishing throughput by configuring publisher queue and worker availability.
Continue to the next section for information on how to configure publisher queue and worker availability.
About Configuring Publisher Queue and Worker Availability
In addition to simple job prioritization, you can also increase publishing throughput during off-peak hours by configuring publisher queue and worker availability. For example, after a major data migration or import.
See “Configuring Publisher Queue and Worker Availability” in Configuring Publisher Queues for information about configuring publisher queue and worker availability.
About Dedicated Publisher Queue Sets and Worker Sets
Dedicated Publisher Queue Sets and Worker Sets provide a way of completely separating the publishing of distinct types of data. This prevents the publishing of one category from impacting the publishing of another and allows separate management of both.
When you configure a Dedicated Publisher Queue Set, you are essentially creating independent route to publish a specific category of data. If the data that you are publishing needs translation, you can configure a Dedicated Worker Set together with the Dedicated Publisher Queue Set. If you do not need translation, or want to use all workers to process jobs from any Publisher Queue Set, configure only Dedicated Publisher Queue Sets.
For more information, see Using Dedicated Publish Queues.
To Configure Dedicated Publisher Queue Sets
The configuration of a Dedicated Publisher Queue Set provides a way to separate the publishing of different types of data. For example, a WTDocument take a short time to publish, while CAD documents can often take a while. By configuring a Dedicated Publisher Queue Set to publish WTDocuments, you can avoid backlogs in the publishing queues.
To configure a Dedicated Publisher Queue Set, follow the steps below:
1. Create new Publisher Queue Sets by adding the set names to the publish.publishqueue.setnames property in the wvs.properties file.
2. Adjust the Windchill configuration in the wt.properties file to allow for the additional queues:
a. Increase the value of the wt.queue.max.processQueues, if the new number of Windchill queues exceeds the current value.
b. Set these properties to false for all new numbered Publisher Queues in order to retain the completed Windchill Queue Entries and related Publish Job Details logs (as seen in the WVS Job Monitor).
wt.queue.removeCompleted.PublisherQueue<setname><number>
For example,
wt.queue.removeCompleted.PublisherQueuePROE1=false
3. Configure WVS to use the new Publisher Queue Sets. This is best achieved by writing a custom class and method that sets the Publisher Queue Priority and Set, along with the Name and Description of the representation to create. The class and method to use is then defined by the property publish.publishqueue.priorities.filtermethod in the wvs.properties file.
4. Restart the Windchill Method Servers in order to reload the updated wvs.properties settings.
Refer to “Submitting Publish Jobs to Dedicated Publish Queues with Specific Priority” under Using Dedicated Publish Queues.
To Configure Dedicated Worker Sets
By default, WVS has no predefined Worker Sets. All workers are implicitly members of the “DEFAULT” Worker Set.
The creation of a Dedicated Worker Set allows you to allocate workers to a logical Worker Set. This Worker Sets can then be configured to process specific categories of jobs or type of publication. They can also be mapped to a specific or multiple Publisher Queue Sets.
1. Use the Worker Agent Administration Configure Wizard Add Worker button to create the required workers.
2. Assign the Worker to Worker Sets by manually editing the Worker Agent agent.ini file and adding the queueset parameter to each. For example, in the agent.ini file for each Worker Set configuration, add Worker Set configuration, add queueset=<QueuesetName> parameter.
* 
Workers can be members of multiple Worker Sets.
The queueset parameter is a space separated list of worker typeset names.
If a worker has no queueset parameter defined, this implies that it is part of the DEFAULT Worker Queue Set.
You can set the queueset parameter to DEFAULT if it to be used by the default Publisher Queue Set and is part of a list of Worker Queue Sets.
3. Configure which Publish Jobs are assigned to each Worker Set by writing a custom class and method that determines the Worker Set based on your own business rules. The class and method for WVS to use is then defined by setting the publish.publishqueue.usesetworkers.filtermethod property in the wvs.properties file.
Refer to Using Dedicated Publish Queues in the Windchill Help Center for more information.
4. Restart the Windchill Method Servers in order to reload the updated wvs.properties and agent.ini settings.
Using Dedicated Worker Sets in Combination with Dedicated Publisher Queue Sets
If you have defined Dedicated Publisher Queue Sets and have implemented the custom filter to submit publish jobs of a certain category to it, you can dedicate a similarly named Worker Set to it by using the property
publish.publishqueue.usesetworkers.forqueueset.<SetName>=<WorkerType>
in the wvs.properties file, where <SetName> is the Publisher Queue Set Name and <WorkerType> is a space separated list of Worker types that must be mapped to it.
For example, the following property setting maps Publisher Queue Set name CAD to Worker Set Name CAD for the PROE and UG Worker Types only.
publish.publishqueue.usesetworkers.forqueuesetCAD=PROE UG
For more information on configuring Dedicated Publisher Queue Sets and Worker Sets, refer to Tech Support knowledge base articles CS132318 and CS80629.