##// END OF EJS Templates
authn: don't use formatted_json to log statements. It totally screws up...
authn: don't use formatted_json to log statements. It totally screws up logging formatting, and makes big entries in logs with newlines.

File last commit:

r1:854a839a default
r12:2adf7c1f default
Show More
install-celery.rst
71 lines | 2.5 KiB | text/x-rst | RstLexer

Install Celery

To improve |RCM| performance you should install Celery as it makes asynchronous tasks work efficiently. If you install Celery you also need multi-broker support. The recommended message broker is rabbitmq. |RCM| works in sync mode, but running Celery will give you a large speed improvement when managing many big repositories.

If you want to run |RCM| with Celery you need to run celeryd using the paster command and the message broker. The paster command is already installed during |RCM| installation.

To install and configure Celery, use the following steps:

  1. Install Celery and RabbitMQ, see the documentation on the Celery website for Celery installation and rabbitmq installation.
  2. Enable Celery in the :file:`home/{user}/.rccontrol/{instance-id}/rhodecode.ini` file.
  3. Run the Celery daemon with the paster command, using the following example .rccontrol/enterprise-1/profile/bin/paster celeryd .rccontrol/enterprise-1/rhodecode.ini
# Set this section of the ini file to match your Celery installation
####################################
###        CELERY CONFIG        ####
####################################
## Set to true
use_celery = false
broker.host = localhost
broker.vhost = rabbitmqhost
broker.port = 5672
broker.user = rabbitmq
broker.password = qweqwe

celery.imports = rhodecode.lib.celerylib.tasks

celery.result.backend = amqp
celery.result.dburi = amqp://
celery.result.serialier = json

#celery.send.task.error.emails = true
#celery.amqp.task.result.expires = 18000

celeryd.concurrency = 2
#celeryd.log.file = celeryd.log
celeryd.log.level = debug
celeryd.max.tasks.per.child = 1

## tasks will never be sent to the queue, but executed locally instead.
celery.always.eager = false
# Once the above is configured and saved
# Run celery with the paster command and specify the ini file
.rccontrol/enterprise-1/profile/bin/paster celeryd .rccontrol/enterprise-1/rhodecode.ini