2016-01-15 07:24:32 +00:00
|
|
|
Install RabbitMQ for asynchronous tasks
|
|
|
|
=======================================
|
|
|
|
|
2016-09-11 18:43:16 +00:00
|
|
|
In order to launch asynchronous tasks (useful for huge imports for example), we can use RabbitMQ.
|
2016-01-15 07:24:32 +00:00
|
|
|
|
|
|
|
Requirements
|
|
|
|
------------
|
|
|
|
|
|
|
|
You need to have RabbitMQ installed on your server.
|
|
|
|
|
|
|
|
Installation
|
|
|
|
~~~~~~~~~~~~
|
|
|
|
|
|
|
|
.. code:: bash
|
|
|
|
|
|
|
|
wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
|
|
|
|
apt-key add rabbitmq-signing-key-public.asc
|
|
|
|
apt-get update
|
|
|
|
apt-get install rabbitmq-server
|
|
|
|
|
|
|
|
Configuration and launch
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
.. code:: bash
|
|
|
|
|
|
|
|
rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
|
|
|
|
rabbitmq-server -detached
|
|
|
|
|
|
|
|
Stop RabbitMQ
|
|
|
|
~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
.. code:: bash
|
|
|
|
|
|
|
|
rabbitmqctl stop
|
|
|
|
|
|
|
|
|
|
|
|
Configure RabbitMQ in wallabag
|
|
|
|
------------------------------
|
|
|
|
|
2016-09-11 18:43:16 +00:00
|
|
|
Edit your ``parameters.yml`` file to edit RabbitMQ configuration. The default one should be ok:
|
|
|
|
|
|
|
|
.. code:: yaml
|
|
|
|
|
|
|
|
rabbitmq_host: localhost
|
|
|
|
rabbitmq_port: 5672
|
|
|
|
rabbitmq_user: guest
|
|
|
|
rabbitmq_password: guest
|
|
|
|
|
2016-01-15 07:24:32 +00:00
|
|
|
|
|
|
|
Launch RabbitMQ consumer
|
|
|
|
------------------------
|
|
|
|
|
2016-09-11 18:43:16 +00:00
|
|
|
Depending on which service you want to import from you need to enable one (or many if you want to support many) cron job:
|
2016-01-15 07:24:32 +00:00
|
|
|
|
|
|
|
.. code:: bash
|
|
|
|
|
2016-09-11 18:43:16 +00:00
|
|
|
# for Pocket import
|
|
|
|
bin/console rabbitmq:consumer import_pocket -w
|
|
|
|
|
|
|
|
# for Readbility import
|
|
|
|
bin/console rabbitmq:consumer import_readability -w
|
|
|
|
|
|
|
|
# for wallabag v1 import
|
|
|
|
bin/console rabbitmq:consumer import_wallabag_v1 -w
|
|
|
|
|
|
|
|
# for wallabag v2 import
|
|
|
|
bin/console rabbitmq:consumer import_wallabag_v2 -w
|