Um asynchrone Aufgaben zu starten (nützlich z.B. für große Imports), können wir RabbitMQ nutzen.
Voraussetzungen
---------------
+---------------
Du musst RabbitMQ auf deinem Server installiert haben.
rabbitmq-server -detached
RabbitMQ stoppen
-~~~~~~~~~~~~~
+~~~~~~~~~~~~~~~
.. code:: bash
Starte den RabbitMQ Consumer
-------------------------
+----------------------------
Abhängig von welchem Service du importieren möchtest, solltest du einen Cron Job aktivieren (oder mehrere, wenn du viele unterstützen willst):
# for Pocket import
bin/console rabbitmq:consumer import_pocket -w
- # for Readbility import
+ # for Readability import
bin/console rabbitmq:consumer import_readability -w
+ # for Instapaper import
+ bin/console rabbitmq:consumer import_instapaper -w
+
# for wallabag v1 import
bin/console rabbitmq:consumer import_wallabag_v1 -w
# for wallabag v2 import
bin/console rabbitmq:consumer import_wallabag_v2 -w
+
+ # for Firefox import
+ bin/console rabbitmq:consumer import_firefox -w
+
+ # for Chrome import
+ bin/console rabbitmq:consumer import_chrome -w
+
Um asynchrone Aufgaben zu starten (nützlich z.B. für große Imports), können wir Redis nutzen.
Voraussetzungen
-------------
+---------------
Du musst Redis auf deinem Server installiert haben.
Starte den Redis Consumer
-------------------------
+-------------------------
Abhängig von welchem Service du importieren möchtest, solltest du einen Cron Job aktivieren (oder mehrere, wenn du viele unterstützen willst):
# for Pocket import
bin/console wallabag:import:redis-worker pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
- # for Readbility import
+ # for Readability import
bin/console wallabag:import:redis-worker readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
+ # for Instapaper import
+ bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
+
# for wallabag v1 import
bin/console wallabag:import:redis-worker wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
# for wallabag v2 import
bin/console wallabag:import:redis-worker wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
+ # for Firefox import
+ bin/console wallabag:import:redis-worker firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
+
+ # for Chrome import
+ bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log
+
Wenn du den Import nur für ein paar Nachrichten und nicht für alle starten willst, kannst du die Nummer (im folgenden Beispiel 12) angeben. Der Redis Worker wird dann nach der 12. Nachricht stoppen:
.. code:: bash
# for Pocket import
bin/console rabbitmq:consumer import_pocket -w
- # for Readbility import
+ # for Readability import
bin/console rabbitmq:consumer import_readability -w
+ # for Instapaper import
+ bin/console rabbitmq:consumer import_instapaper -w
+
# for wallabag v1 import
bin/console rabbitmq:consumer import_wallabag_v1 -w
# for wallabag v2 import
bin/console rabbitmq:consumer import_wallabag_v2 -w
+
+ # for Firefox import
+ bin/console rabbitmq:consumer import_firefox -w
+
+ # for Chrome import
+ bin/console rabbitmq:consumer import_chrome -w
Install Redis for asynchronous tasks
-=======================================
+====================================
In order to launch asynchronous tasks (useful for huge imports for example), we can use Redis.
Launch Redis consumer
-------------------------
+---------------------
Depending on which service you want to import from you need to enable one (or many if you want to support many) cron job:
# for Pocket import
bin/console wallabag:import:redis-worker pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
- # for Readbility import
+ # for Readability import
bin/console wallabag:import:redis-worker readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
+ # for Instapaper import
+ bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
+
# for wallabag v1 import
bin/console wallabag:import:redis-worker wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
# for wallabag v2 import
bin/console wallabag:import:redis-worker wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
+ # for Firefox import
+ bin/console wallabag:import:redis-worker firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
+
+ # for Chrome import
+ bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log
+
If 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 :
.. code:: bash
--- /dev/null
+Installer RabbitMQ pour des tâches asynchrones
+==============================================
+
+Pour lancer des tâches asynchrones (utile pour des imports importants par exemple), nous pouvons utiliser RabbitMQ.
+
+Pré-requis
+----------
+
+Vous devez installer RabbitMQ sur votre serveur.
+
+Installation
+~~~~~~~~~~~~
+
+.. code:: bash
+
+ wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
+ apt-key add rabbitmq-signing-key-public.asc
+ apt-get update
+ apt-get install rabbitmq-server
+
+Configuration et démarrage
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+.. code:: bash
+
+ rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
+ rabbitmq-server -detached
+
+Arrêter RabbitMQ
+~~~~~~~~~~~~~~~~
+
+.. code:: bash
+
+ rabbitmqctl stop
+
+
+Configurer RabbitMQ dans wallabag
+---------------------------------
+
+Modifiez votre fichier ``parameters.yml`` pour éditer la configuration RabbitMQ. Celle par défaut devrait convenir :
+
+.. code:: yaml
+
+ rabbitmq_host: localhost
+ rabbitmq_port: 5672
+ rabbitmq_user: guest
+ rabbitmq_password: guest
+
+
+Démarrer les clients RabbitMQ
+-----------------------------
+
+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 :
+
+.. code:: bash
+
+ # for Pocket import
+ bin/console rabbitmq:consumer import_pocket -w
+
+ # for Readability import
+ bin/console rabbitmq:consumer import_readability -w
+
+ # for Instapaper import
+ bin/console rabbitmq:consumer import_instapaper -w
+
+ # for wallabag v1 import
+ bin/console rabbitmq:consumer import_wallabag_v1 -w
+
+ # for wallabag v2 import
+ bin/console rabbitmq:consumer import_wallabag_v2 -w
+
+ # for Firefox import
+ bin/console rabbitmq:consumer import_firefox -w
+
+ # for Chrome import
+ bin/console rabbitmq:consumer import_chrome -w
--- /dev/null
+Installer Redis pour des tâches asynchrones
+===========================================
+
+Pour lancer des tâches asynchrones (utile pour des imports importants par exemple), nous pouvons utiliser Redis.
+
+Pré-requis
+----------
+
+Vous devez installer Redis sur votre serveur.
+
+Installation
+~~~~~~~~~~~~
+
+.. code:: bash
+
+ apt-get install redis-server
+
+Démarrage
+~~~~~~~~~
+
+Le serveur devrait déjà être démarré après l'installation. Si ce n'est pas le cas, vous pouvez le démarrer ainsi :
+
+.. code:: bash
+
+ redis-server
+
+
+Configurer Redis dans wallabag
+-------------------------------
+
+Modifiez votre fichier ``parameters.yml`` pour éditer la configuration Redis. Celle par défaut devrait convenir :
+
+.. code:: yaml
+
+ redis_host: localhost
+ redis_port: 6379
+
+
+Démarrer les clients Redis
+--------------------------
+
+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 :
+
+.. code:: bash
+
+ # for Pocket import
+ bin/console wallabag:import:redis-worker pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
+
+ # for Readability import
+ bin/console wallabag:import:redis-worker readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
+
+ # for Instapaper import
+ bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
+
+ # for wallabag v1 import
+ bin/console wallabag:import:redis-worker wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
+
+ # for wallabag v2 import
+ bin/console wallabag:import:redis-worker wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
+
+ # for Firefox import
+ bin/console wallabag:import:redis-worker firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
+
+ # for Chrome import
+ bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log
+
+Si vous souhaitez démarrer l'import pour quelques messages uniquement, vous pouvez spécifier cette valeur en paramètre (ici 12) et le client va s'arrêter après le 12ème message :
+
+.. code:: bash
+
+ bin/console wallabag:import:redis-worker pocket -vv --maxIterations=12