Написание cfquery внутри тега cfoutput? - PullRequest
4 голосов
/ 04 мая 2010

Я пишу cfquery внутри тега cfoutput. Это может быть написано вне тега cfoutput. Мой вопрос здесь: есть ли у нас проблемы с производительностью, если мы напишем cfquery внутри cfoutput?

Ответы [ 2 ]

5 голосов
/ 04 мая 2010

По моему опыту, самым быстрым способом для сервера является то, что вы помещаете <cfoutput></cfoutput> только вокруг областей, которые содержат переменные - в противном случае CF должен просматривать все внутри тегов, чтобы увидеть, что он делает, и не должен переводить для переменных / функции.

Содержимое, излишне упакованное в <cfoutput>, также приводит к появлению нежелательных пробелов, которые могут повлиять на размер документа и скорость загрузки.

Я не знаю, существуют ли какие-либо надежные тесты производительности с последними версиями ColdFusion, подтверждающие мое мнение, и я хочу отметить, что для производительности ColdFusion, безусловно, есть более важные вещи, чем наличие <cfoutput> в право место (например, кеширование запросов, кеширование контента, переменные области видимости и т. д.).

1 голос
/ 11 мая 2010

С точки зрения истинной производительности, если вы используете:

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

против

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

Вы не увидите никакой разницы в производительности.

Однако вам следует ДЕЙСТВИТЕЛЬНО взглянуть на отделение вашего DAO (или запросов) от ваших представлений ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...