aboutsummaryrefslogtreecommitdiffhomepage
path: root/docs/en/developer/rabbitmq.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/en/developer/rabbitmq.rst')
-rw-r--r--docs/en/developer/rabbitmq.rst76
1 files changed, 76 insertions, 0 deletions
diff --git a/docs/en/developer/rabbitmq.rst b/docs/en/developer/rabbitmq.rst
new file mode 100644
index 00000000..63b85106
--- /dev/null
+++ b/docs/en/developer/rabbitmq.rst
@@ -0,0 +1,76 @@
1Install RabbitMQ for asynchronous tasks
2=======================================
3
4In order to launch asynchronous tasks (useful for huge imports for example), we can use RabbitMQ.
5
6Requirements
7------------
8
9You need to have RabbitMQ installed on your server.
10
11Installation
12~~~~~~~~~~~~
13
14.. code:: bash
15
16 wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
17 apt-key add rabbitmq-signing-key-public.asc
18 apt-get update
19 apt-get install rabbitmq-server
20
21Configuration and launch
22~~~~~~~~~~~~~~~~~~~~~~~~
23
24.. code:: bash
25
26 rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
27 rabbitmq-server -detached
28
29Stop RabbitMQ
30~~~~~~~~~~~~~
31
32.. code:: bash
33
34 rabbitmqctl stop
35
36
37Configure RabbitMQ in wallabag
38------------------------------
39
40Edit your ``parameters.yml`` file to edit RabbitMQ configuration. The default one should be ok:
41
42.. code:: yaml
43
44 rabbitmq_host: localhost
45 rabbitmq_port: 5672
46 rabbitmq_user: guest
47 rabbitmq_password: guest
48
49
50Launch RabbitMQ consumer
51------------------------
52
53Depending on which service you want to import from you need to enable one (or many if you want to support many) cron job:
54
55.. code:: bash
56
57 # for Pocket import
58 bin/console rabbitmq:consumer import_pocket -w
59
60 # for Readability import
61 bin/console rabbitmq:consumer import_readability -w
62
63 # for Instapaper import
64 bin/console rabbitmq:consumer import_instapaper -w
65
66 # for wallabag v1 import
67 bin/console rabbitmq:consumer import_wallabag_v1 -w
68
69 # for wallabag v2 import
70 bin/console rabbitmq:consumer import_wallabag_v2 -w
71
72 # for Firefox import
73 bin/console rabbitmq:consumer import_firefox -w
74
75 # for Chrome import
76 bin/console rabbitmq:consumer import_chrome -w