aboutsummaryrefslogtreecommitdiffhomepage
path: root/docs/en/developer
diff options
context:
space:
mode:
Diffstat (limited to 'docs/en/developer')
-rw-r--r--docs/en/developer/rabbitmq.rst76
-rw-r--r--docs/en/developer/redis.rst71
2 files changed, 147 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
diff --git a/docs/en/developer/redis.rst b/docs/en/developer/redis.rst
new file mode 100644
index 00000000..820a52e9
--- /dev/null
+++ b/docs/en/developer/redis.rst
@@ -0,0 +1,71 @@
1Install Redis for asynchronous tasks
2====================================
3
4In order to launch asynchronous tasks (useful for huge imports for example), we can use Redis.
5
6Requirements
7------------
8
9You need to have Redis installed on your server.
10
11Installation
12~~~~~~~~~~~~
13
14.. code:: bash
15
16 apt-get install redis-server
17
18Launch
19~~~~~~
20
21The server might be already running after installing, if not you can launch it using:
22
23.. code:: bash
24
25 redis-server
26
27
28Configure Redis in wallabag
29---------------------------
30
31Edit your ``parameters.yml`` file to edit Redis configuration. The default one should be ok:
32
33.. code:: yaml
34
35 redis_host: localhost
36 redis_port: 6379
37
38
39Launch Redis consumer
40---------------------
41
42Depending on which service you want to import from you need to enable one (or many if you want to support many) cron job:
43
44.. code:: bash
45
46 # for Pocket import
47 bin/console wallabag:import:redis-worker pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
48
49 # for Readability import
50 bin/console wallabag:import:redis-worker readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
51
52 # for Instapaper import
53 bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
54
55 # for wallabag v1 import
56 bin/console wallabag:import:redis-worker wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
57
58 # for wallabag v2 import
59 bin/console wallabag:import:redis-worker wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
60
61 # for Firefox import
62 bin/console wallabag:import:redis-worker firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
63
64 # for Chrome import
65 bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log
66
67If you want to launch the import only for some messages and not all, you can specify this number (here 12) and the worker will stop right after the 12th message :
68
69.. code:: bash
70
71 bin/console wallabag:import:redis-worker pocket -vv --maxIterations=12