aboutsummaryrefslogtreecommitdiffhomepage
path: root/docs/de/developer/asynchronous.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/de/developer/asynchronous.rst')
-rw-r--r--docs/de/developer/asynchronous.rst158
1 files changed, 158 insertions, 0 deletions
diff --git a/docs/de/developer/asynchronous.rst b/docs/de/developer/asynchronous.rst
new file mode 100644
index 00000000..1d241a72
--- /dev/null
+++ b/docs/de/developer/asynchronous.rst
@@ -0,0 +1,158 @@
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
50
51RabbitMQ in wallabag aktivieren
52^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
53
54In den internen Einstellungen, aktiviere RabbitMQ im Import-Abschnitt mit dem Wert 1.
55
56Starte den RabbitMQ-Consumer
57^^^^^^^^^^^^^^^^^^^^^^^^^^^^
58
59Abhängig davon, über welchen Service du importieren möchtest, musst du den entsprechenden (oder mehrere) Cronjob aktivieren:
60
61.. code:: bash
62
63 # für den Pocket-Import
64 bin/console rabbitmq:consumer -e=prod import_pocket -w
65
66 # für den Readability-Import
67 bin/console rabbitmq:consumer -e=prod import_readability -w
68
69 # für den Instapaper-Import
70 bin/console rabbitmq:consumer -e=prod import_instapaper -w
71
72 # für den wallabag v1-Import
73 bin/console rabbitmq:consumer -e=prod import_wallabag_v1 -w
74
75 # für den wallabag v2-Import
76 bin/console rabbitmq:consumer -e=prod import_wallabag_v2 -w
77
78 # für den Firefox-Import
79 bin/console rabbitmq:consumer -e=prod import_firefox -w
80
81 # für den Chrome-Import
82 bin/console rabbitmq:consumer -e=prod import_chrome -w
83
84Redis für asynchrone Aufgaben installieren
85------------------------------------------
86
87Um große asynchrone Aufgaben zu starten (etwa für große Importe), können wir auch Redis nutzen.
88
89Voraussetzungen
90^^^^^^^^^^^^^^^
91
92Du musst Redis auf deinem Server installiert haben.
93
94Installation
95^^^^^^^^^^^^
96
97.. code:: bash
98
99 apt-get install redis-server
100
101Start
102^^^^^
103
104Der Server kann bereits nach der Installation laufen, falls nicht, kannst du ihn wie folgt starten:
105
106.. code:: bash
107
108 redis-server
109
110
111Redis für wallabag konfigurieren
112^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
113
114Bearbeite deine ``app/config/parameters.yml``-Datei, um die Redis-Parameter zu ändern. Die Standardwerte sollten in Ordnung sein:
115
116.. code:: yaml
117
118 redis_host: localhost
119 redis_port: 6379
120
121Redis in wallabag aktivieren
122^^^^^^^^^^^^^^^^^^^^^^^^^^^^
123
124In den internen Einstellungen, aktiviere Redis im Import-Abschnitt mit dem Wert 1.
125
126Starten des Redis-Consumer
127^^^^^^^^^^^^^^^^^^^^^^^^^^
128
129Abhängig davon, über welchen Service du importieren möchtest, musst du den entsprechenden (oder mehrere) Cronjob aktivieren:
130
131.. code:: bash
132
133 # für den Pocket-Import
134 bin/console wallabag:import:redis-worker -e=prod pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
135
136 # für den Readability-Import
137 bin/console wallabag:import:redis-worker -e=prod readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
138
139 # für den Instapaper-Import
140 bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
141
142 # für den wallabag v1-Import
143 bin/console wallabag:import:redis-worker -e=prod wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
144
145 # für den wallabag v2-Import
146 bin/console wallabag:import:redis-worker -e=prod wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
147
148 # für den Firefox-Import
149 bin/console wallabag:import:redis-worker -e=prod firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
150
151 # für den Chrome-Import
152 bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log
153
154Wenn 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:
155
156.. code:: bash
157
158 bin/console wallabag:import:redis-worker -e=prod pocket -vv --maxIterations=12 \ No newline at end of file