我正在创建一个需要大量图像缩略图(〜3000,5-25KB)的应用程序。由于速度至关重要,我计划在应用程序启动时将这些图像加载到内存中。在运行时,新的缩略图将被下载并添加到集体中。存储大量小文件:存档与文件系统
我可以将它们全部存储在一个文件夹中,但在程序启动时将数千个文件读入内存似乎效率不高。
我的第二个选择是将它们保存在某种(压缩)存档中。这会使存储本身和加载更有效率(我认为)。但是,新文件将定期添加,这可能不会像将文件保存在文件夹中那样流畅。
正在(压缩)存档中存储小文件的缓存是不是一个坏主意? ZIP文件是要走的路吗?使用未压缩的档案(如果是,请问是什么类型)我会更好吗?
所有图像文件将是JPEG的。
在此先感谢!
编辑:我正在考虑放弃“在应用程序启动时将所有内容加载到内存”的事情。这会简化我的问题。我最初的想法是将所有内容放在一个大文件中,这似乎不太有利,因为一个目录中的许多文件的问题可以通过散列到子目录中来解决。
压缩在压缩图像文件格式上效果很差(图像格式已经比通用压缩算法可以管理的更好。你可能会用'.tar'来减少开销。 – 2011-06-01 16:54:43