]> git.immae.eu Git - github/wallabag/wallabag.git/blame - docs/de/developer/asynchronous.rst
Merge pull request #2842 from K-Phoen/update-rulerz
[github/wallabag/wallabag.git] / docs / de / developer / asynchronous.rst
CommitLineData
2bc5b74c
JO
1Asynchrone Aufgaben
2===================
3
4Um große asynchrone Aufgaben zu starten (etwa für große Importe), können wir RabbitMQ oder Redis nutzen.
5
6Installation von RabbitMQ für asynchrone Aufgaben
7-------------------------------------------------
8
9Voraussetzungen
10^^^^^^^^^^^^^^^
11
12Du musst RabbitMQ auf deinem Server installiert haben.
13
14Installation
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
24Konfiguration und Start
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
32RabbitMQ stoppen
33^^^^^^^^^^^^^^^^
34
35.. code:: bash
36
37 rabbitmqctl stop
38
39RabbitMQ für wallabag konfigurieren
40^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
41
42Bearbeite deine ``app/config/parameters.yml``-Datei, um die RabbitMQ-Parameter zu ändern. Die Standardwerte sollten in Ordnung sein:
43
44.. code:: yaml
45
46 rabbitmq_host: localhost
47 rabbitmq_port: 5672
48 rabbitmq_user: guest
49 rabbitmq_password: guest
881b0578 50 rabbitmq_prefetch_count: 10 # lesen http://www.rabbitmq.com/consumer-prefetch.html
2bc5b74c
JO
51
52RabbitMQ in wallabag aktivieren
53^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
54
55In den internen Einstellungen, aktiviere RabbitMQ im Import-Abschnitt mit dem Wert 1.
56
57Starte den RabbitMQ-Consumer
58^^^^^^^^^^^^^^^^^^^^^^^^^^^^
59
60Abhängig davon, über welchen Service du importieren möchtest, musst du den entsprechenden (oder mehrere) Cronjob aktivieren:
61
62.. code:: bash
63
64 # für den Pocket-Import
65 bin/console rabbitmq:consumer -e=prod import_pocket -w
66
67 # für den Readability-Import
68 bin/console rabbitmq:consumer -e=prod import_readability -w
69
70 # für den Instapaper-Import
71 bin/console rabbitmq:consumer -e=prod import_instapaper -w
72
73 # für den wallabag v1-Import
74 bin/console rabbitmq:consumer -e=prod import_wallabag_v1 -w
75
76 # für den wallabag v2-Import
77 bin/console rabbitmq:consumer -e=prod import_wallabag_v2 -w
78
79 # für den Firefox-Import
80 bin/console rabbitmq:consumer -e=prod import_firefox -w
81
82 # für den Chrome-Import
83 bin/console rabbitmq:consumer -e=prod import_chrome -w
84
85Redis für asynchrone Aufgaben installieren
86------------------------------------------
87
88Um große asynchrone Aufgaben zu starten (etwa für große Importe), können wir auch Redis nutzen.
89
90Voraussetzungen
91^^^^^^^^^^^^^^^
92
93Du musst Redis auf deinem Server installiert haben.
94
95Installation
96^^^^^^^^^^^^
97
98.. code:: bash
99
100 apt-get install redis-server
101
102Start
103^^^^^
104
105Der Server kann bereits nach der Installation laufen, falls nicht, kannst du ihn wie folgt starten:
106
107.. code:: bash
108
109 redis-server
110
111
112Redis für wallabag konfigurieren
113^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
114
115Bearbeite deine ``app/config/parameters.yml``-Datei, um die Redis-Parameter zu ändern. Die Standardwerte sollten in Ordnung sein:
116
117.. code:: yaml
118
119 redis_host: localhost
120 redis_port: 6379
121
122Redis in wallabag aktivieren
123^^^^^^^^^^^^^^^^^^^^^^^^^^^^
124
125In den internen Einstellungen, aktiviere Redis im Import-Abschnitt mit dem Wert 1.
126
127Starten des Redis-Consumer
128^^^^^^^^^^^^^^^^^^^^^^^^^^
129
130Abhängig davon, über welchen Service du importieren möchtest, musst du den entsprechenden (oder mehrere) Cronjob aktivieren:
131
132.. code:: bash
133
134 # für den Pocket-Import
135 bin/console wallabag:import:redis-worker -e=prod pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
136
137 # für den Readability-Import
138 bin/console wallabag:import:redis-worker -e=prod readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
139
140 # für den Instapaper-Import
141 bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
142
143 # für den wallabag v1-Import
144 bin/console wallabag:import:redis-worker -e=prod wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
145
146 # für den wallabag v2-Import
147 bin/console wallabag:import:redis-worker -e=prod wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
148
149 # für den Firefox-Import
150 bin/console wallabag:import:redis-worker -e=prod firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
151
152 # für den Chrome-Import
b46e63fc 153 bin/console wallabag:import:redis-worker -e=prod chrome -vv >> /path/to/wallabag/var/logs/redis-chrome.log
2bc5b74c
JO
154
155Wenn du den Import nur für einige Artikel nutzen willst, kannst du die Nummer festlegen (hier: 12) und der Consumer wird nach dem zwölften Artikel aufhören:
156
157.. code:: bash
158
b46e63fc 159 bin/console wallabag:import:redis-worker -e=prod pocket -vv --maxIterations=12