【发布时间】:2011-09-19 19:26:20
【问题描述】:
我们注意到在上传文件时会占用大量 RAM。我非常期待,但释放内存的速度似乎很慢。显然,当 RAM 过低时,这会导致整个系统变慢。
除了增加更多 RAM 之外,还有什么可以帮助提高文件上传的一般性能和 RAM 使用率或上传完成后对象被 GC 的速率? Tomcat6中的服务器设置? Grails 本身有什么东西?
【问题讨论】:
标签: performance grails file-upload tomcat6
我们注意到在上传文件时会占用大量 RAM。我非常期待,但释放内存的速度似乎很慢。显然,当 RAM 过低时,这会导致整个系统变慢。
除了增加更多 RAM 之外,还有什么可以帮助提高文件上传的一般性能和 RAM 使用率或上传完成后对象被 GC 的速率? Tomcat6中的服务器设置? Grails 本身有什么东西?
【问题讨论】:
标签: performance grails file-upload tomcat6
如 Grails 手册中所述,您如何处理文件上传?如果您期望相当多的并发文件上传(相当大的大小)非常消耗内存,那么这对您来说可能还不够好。
在我看来,您想让您的应用将上传的内容保存在磁盘上,而不是将其保存在内存中(在将文件内容传递给您的控制器之前)
Grails 在后台使用 Commons Fileupload。在您的情况下,编写一个以比常规 grails 方式更复杂的方式进行处理的控制器可能更实用。也许streaming API 是您想要的,或者regular way(向下滚动到“资源清理”)但使用磁盘存储而不是内存。我认为您可以在控制器操作中使用该页面上的代码。 Commons Fileupload 已经在你的类路径中了
【讨论】: