我所拥有的假设是 -
现在情况是我有资源,他们的表示可以是动态预先生成或生成;其中预生成是指在修改资源时生成的 text / html 或 application / atom + xml (可以异步完成)和即时生成是指例如在请求时生成表示的JSP / PHP脚本。
我感到困惑的是,预生成与生成动态+缓存相比,性能增量有多大?您有什么经验/意见?
答案 0 :(得分:1)
您询问性能,但不指出应执行的操作,因此我假设该指标是“响应时间”。
这两种方法只是彼此的变种。预生成只是一种不同的缓存方式。所以实际上,唯一的区别是一个是“懒惰”而另一个不是。
当所有资源都已缓存(并且不更改)时,延迟差异将为零。但性能差异根据几个参数而变化:
一个临界点是指项目修改的频率低于访问。
但还有很多其他因素需要考虑:
答案 1 :(得分:0)
性能增益与生成所需的努力成比例;因此,如果需要大量资源(并且可能是时间)来构建表示,那么缓存是一个好主意。
因此,您需要做的第一件事是衡量构建表示的过程,并确定性能发生的位置。