在cfoutput标签内写cfquery?

时间:2010-05-04 05:11:16

标签: coldfusion performance

我在cfoutput标签内写了cfquery。它可以在cfoutput标记之外写入。我的问题是,如果我们在cfoutput中编写cfquery,我们是否有任何性能问题?

2 个答案:

答案 0 :(得分:5)

根据我的经验,服务器的最快方式是将<cfoutput></cfoutput>仅放在包含变量的区域附近 - 否则CF必须扫描标签内的所有内容,以查看它的作用,而不必翻译对于变量/函数。

<cfoutput>中不必要地包含的内容也会产生不需要的空白,这可能会影响文档大小和下载速度。

我不知道是否有最新ColdFusion版本的可靠性能测试证明了我的观点,我想指出,对于ColdFusion性能肯定有很多比{{1}更重要的事情。在 right 位置(例如缓存查询,内容缓存,范围变量等)。

答案 1 :(得分:1)

从真实的表现角度来看,如果你使用:

<cfoutput><cfquery>SELECT * FROM foo</cfquery>#now()#</cfoutput>

VS

<cfquery>SELECT * FROM foo</cfquery><cfoutput>#now()#</cfoutput>

您不会看到任何性能差异。

但是,您应该真正考虑将DAO(或查询)与您的观点分开......