40 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
| .. _jobrunner:
 | |
| 
 | |
| 
 | |
| #######################################
 | |
| Configuring channels and the job runner
 | |
| #######################################
 | |
| 
 | |
| .. automodule:: odoo.addons.queue_job.jobrunner.runner
 | |
| 
 | |
| 
 | |
| What is a channel?
 | |
| ------------------
 | |
| 
 | |
| .. autoclass:: odoo.addons.queue_job.jobrunner.channels.Channel
 | |
|    :noindex:
 | |
| 
 | |
| How to configure Channels?
 | |
| --------------------------
 | |
| 
 | |
| The ``ODOO_QUEUE_JOB_CHANNELS`` environment variable must be
 | |
| set before starting Odoo in order to enable the job runner
 | |
| and configure the capacity of the channels.
 | |
| 
 | |
| The general syntax is ``channel(.subchannel)*(:capacity(:key(=value)?)*)?,...``.
 | |
| 
 | |
| Intermediate subchannels which are not configured explicitly are autocreated
 | |
| with an unlimited capacity (except the root channel which if not configured gets
 | |
| a default capacity of 1).
 | |
| 
 | |
| A delay in seconds between jobs can be set at the channel level with 
 | |
| the ``throttle`` key.
 | |
| 
 | |
| Example ``ODOO_QUEUE_JOB_CHANNELS``:
 | |
| 
 | |
| * ``root:4``: allow up to 4 concurrent jobs in the root channel.
 | |
| * ``root:4,root.sub:2``: allow up to 4 concurrent jobs in the root channel and
 | |
|   up to 2 concurrent jobs in the channel named ``root.sub``.
 | |
| * ``sub:2``: the same.
 | |
| * ``root:4:throttle=2``: wait at least 2 seconds before starting the next job
 |