我在cfoutput标记中编写cfquery。它可以写在cfoutput标签之外。我这里的问题是,如果我们在cfoutput中编写cfquery,是否会有任何性能问题?
发布于 2010-05-04 15:16:19
根据我的经验,对于服务器来说,最快的方法是只将<cfoutput></cfoutput>放在包含变量的区域周围-否则CF必须扫描标签中的所有内容,看看它做了什么,而不必转换变量/函数。
不必要地包装在<cfoutput>中的内容还会产生不需要的空格,这可能会影响文档大小和下载速度。
我不知道最新的ColdFusion版本是否有可靠的性能测试来证明我的观点,我想指出的是,对于ColdFusion性能来说,肯定有很多事情比将<cfoutput>放在正确的地方更重要(例如,缓存查询、内容缓存、范围变量等)。
发布于 2010-05-11 12:22:46
从真正的性能角度来看,如果您使用:
<cfoutput><cfquery>SELECT * FROM foo</cfquery>#now()#</cfoutput>
vs
<cfquery>SELECT * FROM foo</cfquery><cfoutput>#now()#</cfoutput>
您不会看到任何性能差异。
但是,您应该真正考虑将DAO (或查询)与视图分开……
https://stackoverflow.com/questions/2762944
复制相似问题