]>
Commit | Line | Data |
---|---|---|
5601b453 | 1 | Compiti Asincroni |
2 | ================= | |
3 | ||
4 | Per avviare compiti asincroni (utile ad esempio per grandi importazioni), Possiamo usare RabbitMQ o Redis. | |
5 | ||
6 | Installare RabbitMQ per compiti asincroni | |
7 | ----------------------------------------- | |
8 | ||
9 | Requisiti | |
10 | ^^^^^^^^^ | |
11 | ||
12 | Dovete avere RabbitMQ installato sul vostro server. | |
13 | ||
14 | Installazione | |
15 | ^^^^^^^^^^^^^ | |
16 | ||
17 | .. code:: bash | |
18 | ||
19 | wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc | |
20 | apt-key add rabbitmq-signing-key-public.asc | |
21 | apt-get update | |
22 | apt-get install rabbitmq-server | |
23 | ||
24 | Configurazione ed avvio | |
25 | ^^^^^^^^^^^^^^^^^^^^^^^ | |
26 | ||
27 | .. code:: bash | |
28 | ||
29 | rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest) | |
30 | rabbitmq-server -detached | |
31 | ||
32 | Fermare RabbitMQ | |
33 | ^^^^^^^^^^^^^^^^ | |
34 | ||
35 | .. code:: bash | |
36 | ||
37 | rabbitmqctl stop | |
38 | ||
39 | ||
40 | Configurare RabbitMQ in wallabag | |
41 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
42 | ||
43 | Modificate il vostro file ``app/config/parameters.yml`` per modificare la configurazione di RabbitMQ. Quella di default dovrebbe andare bene: | |
44 | ||
45 | .. code:: yaml | |
46 | ||
47 | rabbitmq_host: localhost | |
48 | rabbitmq_port: 5672 | |
49 | rabbitmq_user: guest | |
50 | rabbitmq_password: guest | |
51 | rabbitmq_prefetch_count: 10 # read http://www.rabbitmq.com/consumer-prefetch.html | |
52 | ||
53 | Abilitare RabbitMQ su wallabag | |
54 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
55 | ||
56 | Su Strumenti, nella sezione **Importa**, abilitate RabbitMQ (con il valore 1). | |
57 | ||
58 | Avviare RabbitMQ consumer | |
59 | ^^^^^^^^^^^^^^^^^^^^^^^^^ | |
60 | ||
61 | Dipendendo da quale servizio vogliate importare, dovrete abilitare uno (o più se volete supportare molti) o più cronjob: | |
62 | ||
63 | .. code:: bash | |
64 | ||
65 | # per importare da Pocket | |
66 | bin/console rabbitmq:consumer -e=prod import_pocket -w | |
67 | ||
68 | # per importare da Readability | |
69 | bin/console rabbitmq:consumer -e=prod import_readability -w | |
70 | ||
71 | # per importare da Instapaper | |
72 | bin/console rabbitmq:consumer -e=prod import_instapaper -w | |
73 | ||
74 | # per importare da wallabag v1 | |
75 | bin/console rabbitmq:consumer -e=prod import_wallabag_v1 -w | |
76 | ||
77 | # per importare da wallabag v2 | |
78 | bin/console rabbitmq:consumer -e=prod import_wallabag_v2 -w | |
79 | ||
80 | # per importare da Firefox | |
81 | bin/console rabbitmq:consumer -e=prod import_firefox -w | |
82 | ||
83 | # per importare da Chrome | |
84 | bin/console rabbitmq:consumer -e=prod import_chrome -w | |
85 | ||
86 | Installare Redis per compiti asincroni | |
87 | -------------------------------------- | |
88 | ||
89 | Per avviare compiti asincroni (utile ad esempio per grandi importazioni), Possiamo usare Redis. | |
90 | ||
91 | Requisiti | |
92 | ^^^^^^^^^ | |
93 | ||
94 | Dovete avere Redis installato sul vostro server. | |
95 | ||
96 | Installazione | |
97 | ^^^^^^^^^^^^^ | |
98 | ||
99 | .. code:: bash | |
100 | ||
101 | apt-get install redis-server | |
102 | ||
103 | ||
104 | Avvio | |
105 | ^^^^^ | |
106 | ||
107 | Il server dovrebbe già essere attivo dopo l'installazione, altrimenti potete avviarlo usando: | |
108 | ||
109 | .. code:: bash | |
110 | ||
111 | redis-server | |
112 | ||
113 | ||
114 | Configurare Redis su wallabag | |
115 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
116 | ||
117 | Modificate il vostro file ``app/config/parameters.yml`` per modificare la configurazione di Redis. Quella di default dovrebbe andare bene: | |
118 | ||
119 | .. code:: yaml | |
120 | ||
121 | redis_host: localhost | |
122 | redis_port: 6379 | |
123 | ||
124 | Abilitare Redis su wallabag | |
125 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | |
126 | ||
127 | Su Strumenti, nella sezione **Importa**, abilitate Redis (con il valore 1). | |
128 | ||
129 | Avviare Redis consumer | |
130 | ^^^^^^^^^^^^^^^^^^^^^^ | |
131 | ||
132 | Dipendendo da quale servizio vogliate importare, dovrete abilitare uno (o più se volete supportare molti) o più cronjob: | |
133 | ||
134 | .. code:: bash | |
135 | ||
136 | # per importare da Pocket | |
137 | bin/console wallabag:import:redis-worker -e=prod pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log | |
138 | ||
139 | # per importare da Readability | |
140 | bin/console wallabag:import:redis-worker -e=prod readability -vv >> /path/to/wallabag/var/logs/redis-readability.log | |
141 | ||
142 | # per importare da Instapaper | |
143 | bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log | |
144 | ||
145 | # per importare da wallabag v1 | |
146 | bin/console wallabag:import:redis-worker -e=prod wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log | |
147 | ||
148 | # per importare da wallabag v2 | |
149 | bin/console wallabag:import:redis-worker -e=prod wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log | |
150 | ||
151 | # per importare da Firefox | |
152 | bin/console wallabag:import:redis-worker -e=prod firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log | |
153 | ||
154 | # per importare da Chrome | |
155 | bin/console wallabag:import:redis-worker -e=prod chrome -vv >> /path/to/wallabag/var/logs/redis-chrome.log | |
156 | ||
157 | Se volete avviare l'importazione solamente per alcuni messaggi e non tutti, potete specificare questo numero (qui 12) e il programma si fermerà dopo il dodicesimo messaggio: | |
158 | ||
159 | .. code:: bash | |
160 | ||
161 | bin/console wallabag:import:redis-worker -e=prod pocket -vv --maxIterations=12 | |
162 |