从 ColdFusion 8 升级到 ColdFusion 2018 后,我们面临一些服务器经常崩溃的问题。
我们已经尝试了性能调整工具并修复了所有发现的问题。仍然每天至少崩溃 1 到 2 次。
我们通过更新字体修复了一些问题,例如字体丢失错误,并修复了在 `coldfusion-out.log1 中发现的问题。
现在我们正在检查迭代、SQL 查询是否有可能出现 sql 超时或类似情况。
除此之外,我们还有什么特别需要做的来解决服务器关闭等问题吗?
从 ColdFusion 8 升级到 ColdFusion 2018 后,我们面临一些服务器经常崩溃的问题。
我们已经尝试了性能调整工具并修复了所有发现的问题。仍然每天至少崩溃 1 到 2 次。
我们通过更新字体修复了一些问题,例如字体丢失错误,并修复了在 `coldfusion-out.log1 中发现的问题。
现在我们正在检查迭代、SQL 查询是否有可能出现 sql 超时或类似情况。
除此之外,我们还有什么特别需要做的来解决服务器关闭等问题吗?
我的建议。尽快安装FusionReactor监控工具。这将告诉您是否已将请求排队或是否有其他事情发生。
这是我用过的最好的工具之一。
有两种可能性:
1)您已更新 Coldfusion,但尚未更新您的数据库版本(特别是 oracle)。这可能会导致 CF 使用过时的连接器驱动程序,这可能会导致 DB 连接偶尔挂断,进而导致 CF 服务器无响应。如果是这种情况,更新数据库可以解决问题。
2)看看你是如何存储客户端变量的。如果它们存储在注册表中,服务器可能会间歇性地崩溃。如果您不使用任何客户端变量,最好将存储更改为数据库或无。请记住,客户端变量不会影响自动注销等会话活动。
它可能与会话相关。每次客户端进入会话时,Coldfusion 似乎都会留下足迹,并且可能会根据您的 cookie 过期时间保留一块内存。我猜你的服务器正在逐渐消耗内存。一种解决方案是减少进入会话的客户端,另一种是古老的 CF 解决方案(例如,将内存块添加到您的服务器)。
以下是您可以添加的一些代码,以根据您网站的需要快速减少冗长会话的数量。我已经使用了它,它会有所帮助,但不会完全消除内存不足的 CF 应用程序。
<cfif (
(NOT Len( cgi.http_user_agent )) OR
REFind( "bot\b", cgi.http_user_agent ) OR
Find( "crawl", cgi.http_user_agent ) OR
REFind( "\brss", cgi.http_user_agent ) OR
Find( "feed", cgi.http_user_agent ) OR
Find( "news", cgi.http_user_agent ) OR
Find( "blog", cgi.http_user_agent ) OR
Find( "reader", cgi.http_user_agent ) OR
Find( "syndication", cgi.http_user_agent ) OR
Find( "coldfusion", cgi.http_user_agent ) OR
Find( "slurp", cgi.http_user_agent ) OR
Find( "google", cgi.http_user_agent ) OR
Find( "zyborg", cgi.http_user_agent ) OR
Find( "emonitor", cgi.http_user_agent ) OR
Find( "jeeves", cgi.http_user_agent )
)>
<cfset THIS.name = "myWebsite_06302019">
<cfset THIS.sessionManagement="Yes">
<cfset THIS.sessiontimeout="#createtimespan(0,0,0,5)#">
<!---<cfset THIS.sessioncookie.timeout = "7" >--->
<cfset THIS.sessioncookie.timeout = "-1" >
<cfelse>
<cfset THIS.name = "myWebsite_06302019">
<cfset THIS.sessionManagement="Yes">
<cfset THIS.sessiontimeout="#createtimespan(0,0,180,0)#">
<!---<cfset THIS.sessioncookie.timeout = "7" >--->
<cfset THIS.sessioncookie.timeout = "#createtimespan(0,0,180,0)#" >
</cfif>