coldfusion服务器状态页面

时间:2011-03-01 21:39:46

标签: coldfusion coldfusion-8

我想在ColdFusion网站(具有专用服务器)上创建一个页面,该页面为用户提供有关服务器所承受的压力量的一些信息。

因此,用户可以去那里看看服务器速度慢的原因是由于流量高,或者由于其他原因(可能是我手动提供的信息)。

交通数据需要是动态的。

所以我很好奇其他人是否曾尝试过这样的事情?如果可能有一些开源软件包可以提供帮助?

4 个答案:

答案 0 :(得分:4)

有各种形状和尺寸的免费(而非免费)CF监控工具。这是一个很好的清单: http://cf411.com/#cfmon

该列表中的许多是您正在寻找的类型,允许您在单个页面中向用户公开此类数据。如果你把它放在公共服务器上,我建议在它面前放置身份验证......这不是你想要向公众公开的那种信息! :)

答案 1 :(得分:2)

对于初学者,您可以获取有关JVM内存使用情况的实时信息:

<cfset runtime = CreateObject("java","java.lang.Runtime").getRuntime()>
<cfset freeMemory = runtime.freeMemory() / 1024 / 1024>
<cfset totalMemory = runtime.totalMemory() / 1024 / 1024>
<cfset maxMemory = runtime.maxMemory() / 1024 / 1024>

也可以 - 尽管显然不是在所有系统上 - 获取有关服务器本身内存情况的信息:

<cfset mFact = createObject('java','java.lang.management.ManagementFactory')>
<cfset osBean = mFact.getOperatingSystemMXBean()>
<cfset freeSystemMem = osBean.getFreePhysicalMemorySize()>
<cfset totalSystemMem = osBean.getTotalPhysicalMemorySize()>

如果您使用Server Monitor API,可以详细说明。如果您使用FusionReactorFRAPI会公开各种有趣的功能,例如getCpuUsage()

我不确定将此类信息公开给您的用户是否有意义,但有一些选择。

答案 2 :(得分:0)

我不确定您是否在Windows上运行,但如果您是另一种选择,则允许perfmon收集有关您的ColdFusion实例的统计信息,例如平均请求时间,队列长度等。

您当然也可以通过perfmon收集CPU,可用内存等,并存储一组日志文件,您可以使用CF计划任务每​​分钟读取一次,并存储在数据库中进行汇总和绘图等。

当然,在这种情况下,您的数据可能只有一分钟的时间,但对于存储数天和数月的指标非常有用,这样您就可以了解服务器的性能。

我们已经使用了这个解决方案几年了,虽然需要一些维护,但它确实让我们对我们所有服务器的运行情况有了很好的了解。

我想在将来使用像New Relic这样的东西,但是他们不支持JRun。也许如果CF允许独立使用Tomcat,我们将来会看到这个选项。

答案 3 :(得分:0)

真的取决于你想看到的确切数据吗?

我认为谷歌分析的混合物,如果你在Windows上使用wmi,收集硬件/ os / coldfusion性能计数器/统计数据。

以下是wmi和coldfusion的一个例子。

http://misterdai.wordpress.com/2010/03/02/askdave-cf7-cpu-usage-on-windows/

然后这是我同样的问题,以及一些例子:

I want to use WMI or Java in ColdFusion on Windows to get performance data