【发布时间】:2010-09-29 13:47:41
【问题描述】:
我有一个功能允许用户创建项目并在此页面上查看它。 他们可以导入资源(pdf、img 等)以与他们的项目一起保存。 所以现在我想创建一个功能,允许用户将他们所有的东西以及与他们在同一组中的人都整齐地用漂亮的丝带绑在一个 zip 文件中。
目前我正在使用 Archive:Zip 抢先压缩文件,保留他们的 CRC32 校验和并将其作为每日 cronjob 运行,以减少用户等待时间。但是,如果对任何文件有任何更改,我将不得不重新运行整个过程。
我的初始基准测试显示,103MB 的文件最多需要 47 秒才能运行。 该过程涉及生成将它们链接到 XSL 的 XML、复制图像、用于 iframe 的 html 等等。
我正在考虑创建一个表或文本文件,以将所有文件的 CRC32 校验和或上次修改日期保存在临时存储区域中,并在每次用户单击导出时与此列表进行比较,如果有的话新文件,我将从缓存的 zip 文件中删除相同的文件并添加新文件。或者我只保留所有松散的文件并复制和替换较新的文件,然后在每次点击时进行存档。
我的问题是:
- 这被认为是过早的还是 糟糕的优化技术?
- 我应该如何正确优化它?
- 是否有一些书籍或资源 我可以学习这些 优化技术?
【问题讨论】:
标签: optimization caching lamp