Compiti Asincroni
Questa documentazione tradotta potrebbe non essere aggiornata. Per funzionalità o requisiti più recenti, consultare la documentazione inglese.
Per avviare compiti asincroni (utile ad esempio per grandi importazioni), Potete usare RabbitMQ o Redis.
Installare RabbitMQ per compiti asincroni
Requisiti
Dovete avere RabbitMQ installato sul vostro server.
Installazione
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
Configurazione ed avvio
rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
rabbitmq-server -detached
Fermare RabbitMQ
rabbitmqctl stop
Configurare RabbitMQ in wallabag
Modificate il vostro file app/config/parameters.yml
per modificare la
configurazione di RabbitMQ. Quella di default dovrebbe andare bene:
rabbitmq_host: localhost
rabbitmq_port: 5672
rabbitmq_user: guest
rabbitmq_password: guest
rabbitmq_prefetch_count: 10 # read http://www.rabbitmq.com/consumer-prefetch.html
Abilitare RabbitMQ su wallabag
Su Strumenti, nella sezione Importa, abilitate RabbitMQ (con il valore 1).
Avviare RabbitMQ consumer
Dipendendo da quale servizio vogliate importare, dovete abilitare uno o più (se volete supportare molti) cronjob:
# per importare da Pocket
bin/console rabbitmq:consumer --env=prod import_pocket -w
# per importare da Readability
bin/console rabbitmq:consumer --env=prod import_readability -w
# per importare da Instapaper
bin/console rabbitmq:consumer --env=prod import_instapaper -w
# per importare da wallabag v1
bin/console rabbitmq:consumer --env=prod import_wallabag_v1 -w
# per importare da wallabag v2
bin/console rabbitmq:consumer --env=prod import_wallabag_v2 -w
# per importare da Firefox
bin/console rabbitmq:consumer --env=prod import_firefox -w
# per importare da Chrome
bin/console rabbitmq:consumer --env=prod import_chrome -w
Installare Redis per compiti asincroni
Per avviare compiti asincroni (utile ad esempio per grandi importazioni), possiamo usare Redis.
Requisiti
Dovete avere Redis installato sul vostro server.
Installazione
apt-get install redis-server
Avvio
Il server dovrebbe già essere attivo dopo l'installazione, altrimenti potete avviarlo usando:
redis-server
Configurare Redis su wallabag
Modificate il vostro file app/config/parameters.yml
per modificare la
configurazione di Redis. Quella di default dovrebbe andare bene:
redis_host: localhost
redis_port: 6379
Abilitare Redis su wallabag
Su Strumenti, nella sezione Importa, abilitate Redis (con il valore 1).
Avviare Redis consumer
Dipendendo da quale servizio vogliate importare, dovrete abilitare uno o più (se volete supportare molti) cronjob:
# per importare da Pocket
bin/console wallabag:import:redis-worker --env=prod pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
# per importare da Readability
bin/console wallabag:import:redis-worker --env=prod readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
# per importare da Instapaper
bin/console wallabag:import:redis-worker --env=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
# per importare da wallabag v1
bin/console wallabag:import:redis-worker --env=prod wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
# per importare da wallabag v2
bin/console wallabag:import:redis-worker --env=prod wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
# per importare da Firefox
bin/console wallabag:import:redis-worker --env=prod firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
# per importare da Chrome
bin/console wallabag:import:redis-worker --env=prod chrome -vv >> /path/to/wallabag/var/logs/redis-chrome.log
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:
bin/console wallabag:import:redis-worker --env=prod pocket -vv --maxIterations=12