2013-03-26 91 views
2

我有一个Java Servlet/JSP应用程序,它要求用户上传档案文件(.rar或.zip)。然后提取该归档文件,并解析所提取的文件。解析文件后,它们中的数据将被添加到数据库中,并且文件将被再次删除。在Heroku上上传文件

在我的本地机器上,由于您只是使用操作系统提供的文件系统,所以它完美地工作。但是现在我想在Heroku上运行这个应用程序,并且我不确定如何进行文件上传。

由于这些文件是用户特定的,而不是永久的,我最初的想法是我可以使用Heroku提供的短暂文件系统,我不需要使用S3。

目前,我的应用程序只运行在1个网页dyno上,没有工人dyno,但在未来,这可能会缩放到多个web dyno,具体取决于要使用它的用户数量。

我可以为我的特定用例使用临时文件系统吗?它可以正确缩放吗?

我目前正在编写使用ServletFileUpload,并正在写入到java.io.File;我能否将我的java.io.File的路径更改为临时文件系统中的路径?什么是这样的路径的例子?

回答

2

我想你可以在你的特定情况下使用临时文件系统,因为它只是解析文件的临时用法。

您可以使用/tmp目录,但请记住,请求完成后文件将被销毁。

这是在这篇文章中讨论的https://stackoverflow.com/a/12416923/476782