如何检测活动oracle会话中的峰值是什么?

时间:2011-12-12 11:09:12

标签: database oracle oracle10g

我们的Oracle 10g数据库遇到了CPU使用限制问题。 (这是一个使用Hibernate作为持久性框架,JDBC和c3p0连接池的Java Web应用程序)

在我们的监控中,我们可以看到cpu使用与活动会话之间存在很强的相关性。 有一个峰值到大约75个活动会话(主动关注通常在10左右),这可能是我们遇到的麻烦的原因。

我的问题是,我怎样才能找出活动会话中这个峰值的原因? 爬虫是否可能导致此峰值?

[编辑] 我们分析了访问日志,发现在该特定时间间隔期间没有流量峰值,其中发生了活动会话峰值。 我认为这是高CPU的结果,导致极长的DB查询持续时间。但这只是一个假设。 也许某人有任何提示或进一步解释?

提前感谢任何提示和建议。 罗尼

2 个答案:

答案 0 :(得分:0)

您可以通过分析Web服务器日志来验证爬网程序是否导致峰值:

  • 您能否在高峰时段看到异常多的请求?
  • 代理商标识是否包含 bot spider crawler 等字词?

答案 1 :(得分:0)

Oracle Enterprise Manager可以让您更好地了解Oracle中发生的情况。它需要定期快照,您可以检查当时正在运行的内容,以及当时进程所处的状态。