2013-03-26 7 views
2

J'ai une application Java Servlet/JSP qui nécessite que l'utilisateur télécharge un fichier d'archive (.rar ou .zip). Ce fichier archive est ensuite extrait et les fichiers extraits sont analysés. Après l'analyse des fichiers, les données qu'ils contiennent sont ajoutées à la base de données et les fichiers sont à nouveau supprimés.Chargement de fichiers sur Heroku

Sur mon ordinateur local, cela fonctionne parfaitement, puisque vous utilisez simplement le système de fichiers fourni par le système d'exploitation. Mais maintenant, je voudrais lancer cette application sur Heroku et je ne sais pas comment faire les téléchargements de fichiers.

Étant donné que ces fichiers sont spécifiques à l'utilisateur, et non permanents, je pensais au départ que je pouvais simplement utiliser le système de fichiers éphémère fourni par Heroku et que je n'exige pas l'utilisation de S3.

Pour l'instant, mon application ne fonctionne qu'avec 1 dyno web et aucun dyno ouvrier, mais dans le futur cela peut être étendu à plusieurs dyno web, en fonction du nombre d'utilisateurs qui vont l'utiliser. Puis-je utiliser le système de fichiers éphémère pour mon cas d'utilisation spécifique, et l'adaptera-t-il correctement? Je suis en train d'écrire en utilisant ServletFileUpload, et j'écris sur java.io.File; Puis-je simplement changer le chemin de mon fichier java.io.File en un chemin dans le système de fichiers éphémère? Quel serait un exemple d'un tel chemin?

Répondre

2

Je suppose que vous pouvez utiliser le système de fichiers éphémère dans votre cas spécifique, car il s'agit juste d'une utilisation temporaire pour l'analyse du fichier.

Vous pouvez utiliser le répertoire /tmp mais gardez à l'esprit que le fichier sera détruit une fois la requête terminée.

Ceci est discuté dans ce message https://stackoverflow.com/a/12416923/476782

Questions connexes