2 votes

Heroku et le téléchargement en arrière-plan en ruby

Actuellement, j'ai une application qui télécharge des images sur S3 dans une tâche d'arrière-plan (Sidekiq). Cela fonctionne bien, mais j'ai dû "bidouiller" une solution et j'étais curieux de savoir si quelqu'un connaissait une meilleure façon de le faire.

Problème : Lorsque l'on utilise Paperclip et un travail en arrière-plan sur Heroku, le travailleur n'est souvent pas en mesure d'accéder au fichier tmp parce qu'il est lancé sur un autre serveur. J'ai essayé de faire en sorte que Paperclip utilise le dossier tmp sur Heroku, et il l'y stocke, mais les tâches d'arrière-plan ont toujours renvoyé un "File not found".

Solution temporelle : Il faut alors encoder l'image en une chaîne base64 et la passer dans la tâche perform (dégoûtant, mauvais, horrible, surcoût important).

Existe-t-il une meilleure façon de procéder sur Heroku ? Je ne veux pas enregistrer un blob d'images dans la base de données, car c'est une pratique tout aussi mauvaise.

1voto

Jakob W Points 2197

Serait-il possible d'utiliser l'approche du téléchargement direct dans l'application Guide Heroku S3 ? Et ensuite avoir une tâche d'arrière-plan pour redimensionner ou traiter si nécessaire ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X