希望有人可以在这里帮助我。
我们使用 Tridon CMS 来管理托管在 jBoss 和 Apache 上的网站。
我们已经使用 SDL Tridion 5.3 5 年了,突然我们遇到了它背后的 Oracle 数据库的错误。我们的大部分内容作为来自文件系统的普通 jsp 页面提供,但我们有一些组件通过调用 Tridion 的 Java API 提供服务,该 API 从 Oracle 数据库返回一个 html 片段。
最近我们注意到其中一些 html 片段没有被提供,并且在检查服务器日志文件时我们发现 Oracle 错误ORA-01000: maximum open cursors exceeded正在生成。
我们的最大光标设置为 300,因此我们将其增加到 350 以查看是否有帮助,但没有。
监视活动的 Oracle 会话,我们可以看到许多会话已达到最大游标,因此我们重新启动了应用服务器。这似乎有所帮助,但只是暂时的。达到最大游标阈值的会话数再次逐渐增加。昨天下午重启后不久,大约有 30 个最大游标的会话,今天早上是 150 个。
显然,最近发生了一些变化,导致了这种情况,但我们不确定是什么。Oracle 数据库不是我们通常可以访问的东西,当然也不是我们直接更改的东西——所有日常数据库操作都是通过 Tridion API 发生的。就 Tridion 开发和发布而言,我们没有做任何不寻常的事情,因此与我们过去几年在那里所做的没有什么不同。我们网站的流量目前相对较低(过去明显更高),所以我们很确定那里没有问题。
我刚刚被告知可能会或可能不会连接的一件事 - 在问题出现之前不久,我们的一个内部防火墙发生故障,但我们想不出一种方法可能会导致我们看到的问题。除了防火墙故障转移,我们找不到应用服务器和数据库之间连接的任何其他更改。
有人对我们可以在哪里寻找解决方案有任何建议吗?我们刚刚向 SDL 开了一张支持票,但目前他们和我们一样困惑。
谢谢。