Question

Alors, j'utilise Paperclip et AWS-S3, ce qui est génial. Et cela fonctionne très bien. Juste un problème, cependant: j'ai besoin de télécharger des fichiers très volumineux. Comme dans plus de 50 méga-octets. Ainsi, nginx meurt. Donc, apparemment stocke Paperclip les choses sur le disque avant d'aller S3?

J'ai trouvé article vraiment cool , mais il semble aussi aller sur le disque d'abord, et ensuite faire tout le reste en arrière-plan.

Idéalement, je serais en mesure de télécharger le fichier en arrière-plan ... J'ai une petite quantité d'expérience faire avec PHP, mais rien avec Rails pour l'instant. Quelqu'un pourrait-il me diriger dans une direction générale, même?

Était-ce utile?

La solution

Peut-être que vous devez augmenter le délai d'attente dans les configs nginx?

Autres conseils

Vous pouvez contourner entièrement le serveur et télécharger directement sur S3 qui empêchera le délai d'attente. La même chose se produit sur Heroku. Si vous utilisez Rails 3, s'il vous plaît vérifier mes exemples de projets:

Exemple de projet en utilisant Rails 3, Flash et MooTools-base FancyUploader pour télécharger directement à S3: https://github.com/iwasrobbed/Rails3-S3-Uploader-FancyUploader

Exemple de projet en utilisant Rails 3, Flash / Silverlight / GoogleGears / BrowserPlus et Plupload basé sur jQuery pour télécharger directement à S3: https://github.com/iwasrobbed/Rails3-S3-Uploader-Plupload

Par ailleurs, vous pouvez faire le post-traitement avec Paperclip en utilisant quelque chose comme ce billet de blog (que Nico a écrit) décrit:

http://www.railstoolkit.com/posts/ FancyUpload-amazon-s3-Uploader avec- paperclip

Vous pourriez être intéressé par mon post ici:

http://www.railstoolkit.com/posts / FancyUpload-amazon-s3-Uploader avec- paperclip

Son sur le téléchargement de plusieurs fichiers (avec des barres de progression, en même temps) directement à S3 sans toucher le serveur.

J'avais un problème similaire, mais avec l'utilisation paperclip, passagers et apache.
Comme nginx, apache a une directive Timeout dans apache que j'augmenté pour résoudre mon problème.

En outre, il y a un passager qui est intéressant fait quand le téléchargement de gros fichiers.
Tout ce qui est écrit sur 8k / tmp / passager. et si apache ne pas autorisations pour y écrire, vous obtenez 500 erreurs aussi.

Voici l'article.
http://tinyw.in/fwVB

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top