Paperclip, upload di file di grandi dimensioni, e AWS
-
13-09-2019 - |
Domanda
Quindi, io sto usando Paperclip e AWS-S3, che è impressionante. E funziona benissimo. Solo un problema, però: ho bisogno di caricare file molto grandi. Come in più di 50 Megabyte. E così, nginx muore. negozi in modo apparentemente Paperclip cose su disco prima di andare a S3?
Ho trovato questo davvero cool articolo , ma sembra anche essere in corso su disco prima, e poi fare tutto il resto in background.
Idealmente, sarei in grado di caricare il file in background ... ho una piccola quantità di esperienza fare questo con PHP, ma nulla con Rails come ancora. Qualcuno mi potrebbe puntare in una direzione generale, anche?
Soluzione
Forse si deve aumentare il timeout nelle configurazioni nginx?
Altri suggerimenti
È possibile ignorare il server del tutto e caricarli direttamente su S3 che impedirà il timeout. La stessa cosa accade su Heroku. Se si utilizza Rails 3, si prega di consultare i miei progetti di esempio:
progetto di esempio utilizzando Rails 3, Flash e FancyUploader MooTools-based per caricare direttamente a S3: https://github.com/iwasrobbed/Rails3-S3-Uploader-FancyUploader
progetto di esempio utilizzando Rails 3, Flash / Silverlight / GoogleGears / BrowserPlus e jQuery-based Plupload di caricare direttamente a S3: https://github.com/iwasrobbed/Rails3-S3-Uploader-Plupload
A proposito, si può fare la post-elaborazione con il Paperclip utilizzando qualcosa di simile questo post del blog (che Nico ha scritto) descrive:
http://www.railstoolkit.com/posts/ fancyupload-amazon-s3-uploader-con-graffetta
Potreste essere interessati nel mio post qui:
http://www.railstoolkit.com/posts / fancyupload-amazon-s3-uploader-con-graffetta
La sua circa il caricamento di più file (con barre di avanzamento, allo stesso tempo) direttamente a S3 senza colpire il server.
ho avuto un problema simile, ma con l'utilizzo di graffetta, passeggeri e apache.
Come nginx, apache ha una direttiva Timeout in apache che ho aumentato a risolvere il mio problema.
Inoltre c'è una cosa interessante passeggero non durante il caricamento di file di grandi dimensioni.
Nulla oltre 8k viene scritto / tmp / passeggero. e se apache non ha
autorizzazioni per scrivere lì si arriva a 500 errori anche.
Ecco l'articolo.
http://tinyw.in/fwVB