...
Depuis la version 3.4.0, il est possible de déporter l'encodage, la transcription et l'xAPI en micro-service. Ces microservices micro-services sont autonome et ne nécessite pas de lien avec la base de données ou le moteur de recherche comme précédemment.
...
Vous avez des dockerfiles pour chaque microservice micro-service à disposition dans le code source de Pod :
...
Il faut que chaque service ait accès au même espace de fichier Pod (espace partagé) et accès à Redis qui va jouer de role de file d'attente pour les taches d'encodage, de transcription ou d'envoi xAPI.
Chaque micro-service est lancé via une commance Celery.
3.1 Microservice Encodage
| Astuce |
|---|
Nous appellerons dans la suite de cette documentation, serveur Pod backend le serveur où la partie web serveur est installée et serveur Pod encodage le serveur où est déporté l'encodage |
Pré-requis :
- Il faut que votre répertoire "
podv3"du serveur backend soit partagé entre vos serveurs (montage NFS par exemple)
Configuration sur le serveur Pod backend :
Dans le fichier settings_local.py
| Bloc de code | ||
|---|---|---|
| ||
(django_pod) pod@pod:/usr/local/django_projects/podv3$ vim pod/custom/settings_local.py |
| Bloc de code | ||
|---|---|---|
| ||
# Configuration Celery sur le frontal
USE_DISTANT_ENCODING_TRANSCODING = True
ENCODING_TRANSCODING_CELERY_BROKER_URL = "redis://redis:6379/5" |
Installation sur le serveur d’encodage :
Installation des lib tierces
| Bloc de code | ||
|---|---|---|
| ||
(django_pod) pod@pod-encodage:/usr/local/django_projects/podv3$ apt-get update && apt-get install -y ffmpeg \
ffmpegthumbnailer \
imagemagick |