带SQL Server 2008的Coldfusion 9-查询结果慢,有500K行

带SQL Server 2008的Coldfusion 9-查询结果慢,有500K行,coldfusion,Coldfusion,我有一个在SQLServer2008上有500K行(10个字段)的表。我需要询问他们所有人。请不要问我为什么需要全部询问,因为这超出了我的问题范围。我的问题是,每当我运行包含查询的coldfusion页面时,我的coldfusion服务器都会冻结 <cfquery name='' datasource=''> SELECT one,two,three,four,five,six,seve,eight,nine,ten FROM tblname; </cfquery>

我有一个在SQLServer2008上有500K行(10个字段)的表。我需要询问他们所有人。请不要问我为什么需要全部询问,因为这超出了我的问题范围。我的问题是,每当我运行包含查询的coldfusion页面时,我的coldfusion服务器都会冻结

<cfquery name='' datasource=''>
SELECT one,two,three,four,five,six,seve,eight,nine,ten
FROM tblname;
</cfquery>

选择一个、两个、三个、四个、五个、六个、八个、九个、十个
来自tblname;
让我头疼的是,在我的MySQL服务器上,一个表的相同条件(500K行,10columns)只需要20秒就可以在同一个coldfusion页面上完成查询


有什么提示吗?

我想我应该采取的第一步是根据查询的使用频率缓存查询。你能做到这一点吗,或者可能把它分成几个不同的查询,而这些查询不是同时运行的?检查你的异常日志。您可能有java堆空间错误。无论您希望实现什么,将那么多数据拉入应用程序服务器可能不是最好的方法。500k行是大量数据。当你从数据库中取回数据时,你在做什么?可能只是因为ColdFusion只是在处理所有的内容。如果这是为了导出/下载,CF不适合这种类型的任务,你说ColdFusion每次运行带有查询的页面时都会冻结。您是否验证了查询是页面中运行缓慢的部分?使用getTickCount()加上一些日志记录可以准确地确定运行缓慢的代码在页面上的位置。