如果辅助数据库崩溃,它会使主Coldfusion服务器崩溃吗?

Owe*_*len 1 mysql coldfusion

现在我们正处理我的企业环境中的一个难题,我们被指责服务器崩溃,但我不是100%肯定我们是罪魁祸首.这是服务器环境:我们有一个主Coldfusion及其MSSQL数据库.然后,我们还有一个托管在不同云上的辅助数据库(MySQL),用于其他任务.系统以这种方式构建的主要原因是因为主服务器由我们的内容管理系统操作,因此我们不允许修改它,添加表或任何类似的操作,因此我们使用备用数据库.根据设计,它上面没有任务关键项,并且页面的构建方式使得如果备用DB不返回任何行,页面将继续正确呈现.

基本上,我被告知,当备用MySQL服务器出现故障或停止接受连接时,它会使用整个主云,包括托管在其上的其他5个站点.我无法访问主Coldfusion或数据库日志,因为CMS提供商不会将它们提供给我.因此,我只能根据他们给我的解释的有效性来判断.

来自我们的CMS提供程序的这种行为的解释是,当Coldfusion查询数据库时,它会创建一个线程,如果数据库没有响应,则线程继续堆栈.最终处理器受到限制,服务器出现故障.这是Coldfusion如何运作的准确解释吗?如果是这样,无论如何都要阻止它,可能是因为DB超时时间更短等等?或者我们的CMS提出的整个解释是一个红鲱鱼和其他东西真的导致崩溃.

任何指导将不胜感激.

问题已解答 - 找到的文件 http://kb2.adobe.com/cps/180/tn_18061.html http://www.adobe.com/devnet/server_archive/articles/cf_timeouts_and_unresponsive_requests.html

全局设置超时请求不会使等待外部资源的内部进程超时(cfquery/cfhttp等).将它们计时的唯一方法是手动设置超时属性.不设置这可能导致线程过载和崩溃的服务器,就像我们发生的那样.

Tom*_*mmy 5

http://kb2.adobe.com/cps/180/tn_18061.html

从阅读项目符号3并根据您的流量,您的CMS人员可能是正确的.

也可以从上面的链接:

如果数据库已关闭且无响应,ColdFusion Server将尝试重新连接数据库多少次?它最终会重启ColdFusion服务器吗?

如果数据库关闭或发生查询请求时数据库的网络链接关闭,则连接将超时(您可以使用cfquery标记中的timeout属性自定义超时期限)并向用户返回错误.请注意,设置连接超时的能力取决于您使用的驱动程序.您可以捕获此错误并使用thecftry/cfcatch标记以编程方式处理它.

这里的问题是cfquery标签上的timeout变量与MySQL ODBC驱动程序不兼容.找不到默认超时.比方说5分钟吧.如果在这5分钟内收到多个请求,那么连接似乎会开始"堆积".