Redis
 sql >> Base de données >  >> NoSQL >> Redis

Transmettre le fichier au travail actif / travail en arrière-plan

Je suggérerais de télécharger directement vers un service comme Amazon S3, puis de traiter le fichier comme bon vous semble dans une tâche en arrière-plan.

Lorsque l'utilisateur télécharge le fichier, vous pouvez être sûr qu'il sera stocké en toute sécurité dans S3. Vous pouvez utiliser un compartiment privé pour interdire l'accès public. Ensuite, dans votre tâche en arrière-plan, vous pouvez traiter le téléchargement en transmettant l'URI S3 du fichier et laisser votre travailleur en arrière-plan télécharger le fichier.

Je ne sais pas ce que votre travailleur en arrière-plan fait avec le fichier, mais il va sans dire que le télécharger à nouveau pourrait ne pas être nécessaire. Il est stocké quelque part après tout.

J'ai utilisé la gemme carrierwave-direct dans le passé avec succès. Puisque vous mentionnez Heroku, ils ont un guide détaillé pour télécharger des fichiers directement sur S3.