diff options
author | Frederic Guillot <fred@kanboard.net> | 2016-06-05 14:19:07 -0400 |
---|---|---|
committer | Frederic Guillot <fred@kanboard.net> | 2016-06-05 14:19:07 -0400 |
commit | a08339059b06bcfb673b13a380b6f199abfb5983 (patch) | |
tree | 81638ec619684f04d9b5676bea1f73e1a2197cd1 /doc/worker.markdown | |
parent | f48e5456312ddb366f9b623cd97b0e740fe99d9e (diff) |
Improve background workers
Diffstat (limited to 'doc/worker.markdown')
-rw-r--r-- | doc/worker.markdown | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/doc/worker.markdown b/doc/worker.markdown new file mode 100644 index 00000000..fba66138 --- /dev/null +++ b/doc/worker.markdown @@ -0,0 +1,35 @@ +Background Workers +================== + +**This feature is experimental**. + +Depending on your configuration, some features can slow down the application if they are executed in the same process as the HTTP request. +Kanboard can delegate these tasks to a background worker that listen for incoming events. + +Example of feature that may slow down Kanboard: + +- Sending emails via an external SMTP server can take several seconds +- Sending notifications to external services + +This feature is optional and require the installation of a queue daemon on your server. + +### Beanstalk + +[Beanstalk](http://kr.github.io/beanstalkd/) is a simple, fast work queue. + +- To install Beanstalk, you can simply use the package manager of your Linux distribution +- Install the [Kanboard plugin for Beanstalk](https://kanboard.net/plugin/beanstalk) +- Start the worker with the Kanboard command line tool: `./kanboard worker` + +### RabbitMQ + +[RabbitMQ](https://www.rabbitmq.com/) is a robust messaging system that is more suitable for high-availability infrastructure. + +- Follow the official documentation of RabbitMQ for the installation and the configuration +- Install the [Kanboard plugin for RabbitMQ](https://kanboard.net/plugin/rabbitmq) +- Start the worker with the Kanboard command line tool: `./kanboard worker` + +### Notes + +- You should start the Kanboard worker with a process supervisor (systemd, upstart or supervisord) +- The process must be have access to the data folder if you store files on the local filesystem and have Sqlite |