]>
Commit | Line | Data |
---|---|---|
1 | Installer RabbitMQ pour des tâches asynchrones | |
2 | ============================================== | |
3 | ||
4 | Pour lancer des tâches asynchrones (utile pour des imports importants par exemple), nous pouvons utiliser RabbitMQ. | |
5 | ||
6 | Pré-requis | |
7 | ---------- | |
8 | ||
9 | Vous devez installer RabbitMQ sur votre serveur. | |
10 | ||
11 | Installation | |
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 | ||
21 | Configuration et démarrage | |
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 | ||
29 | Arrêter RabbitMQ | |
30 | ~~~~~~~~~~~~~~~~ | |
31 | ||
32 | .. code:: bash | |
33 | ||
34 | rabbitmqctl stop | |
35 | ||
36 | ||
37 | Configurer RabbitMQ dans wallabag | |
38 | --------------------------------- | |
39 | ||
40 | Modifiez votre fichier ``app/config/parameters.yml`` pour éditer la configuration RabbitMQ. Celle par défaut devrait convenir : | |
41 | ||
42 | .. code:: yaml | |
43 | ||
44 | rabbitmq_host: localhost | |
45 | rabbitmq_port: 5672 | |
46 | rabbitmq_user: guest | |
47 | rabbitmq_password: guest | |
48 | ||
49 | Activer RabbitMQ dans wallabag | |
50 | ------------------------------ | |
51 | ||
52 | Dans les paramètres internes, section **Import**, activez RabbitMQ (avec la valeur 1). | |
53 | ||
54 | Démarrer les clients RabbitMQ | |
55 | ----------------------------- | |
56 | ||
57 | En fonction du service dont vous souhaitez importer vos données, vous devez activer un (ou plusieurs si vous souhaitez en supporter plusieurs) cron job : | |
58 | ||
59 | .. code:: bash | |
60 | ||
61 | # for Pocket import | |
62 | bin/console rabbitmq:consumer -e=prod import_pocket -w | |
63 | ||
64 | # for Readability import | |
65 | bin/console rabbitmq:consumer -e=prod import_readability -w | |
66 | ||
67 | # for Instapaper import | |
68 | bin/console rabbitmq:consumer -e=prod import_instapaper -w | |
69 | ||
70 | # for wallabag v1 import | |
71 | bin/console rabbitmq:consumer -e=prod import_wallabag_v1 -w | |
72 | ||
73 | # for wallabag v2 import | |
74 | bin/console rabbitmq:consumer -e=prod import_wallabag_v2 -w | |
75 | ||
76 | # for Firefox import | |
77 | bin/console rabbitmq:consumer -e=prod import_firefox -w | |
78 | ||
79 | # for Chrome import | |
80 | bin/console rabbitmq:consumer -e=prod import_chrome -w |