这是我的第一个问题,我希望它得到很好的解释,所以我可以找到答案。
我在一家交付公司的网站项目中工作,该公司在 Oracle9i 服务器中拥有所有数据。大多数网络用户只想知道他们什么时候能拿到包裹,但我敢肯定还有机器人会每天多次查询这些信息以更新他们的系统。我正在编写代码来阻止这些机器人(例如,在 15 分钟内的第三次查询后要求验证码),因为我们有一些 Web 服务可以用来批量查询所有数据。
现在,我的问题是数据库在高峰时间 12.00-14.00 开始回答非常缓慢。这是我从 Web 应用程序中解析的一些数据。我没有此级别的 Web 服务日志,但那里也有很多查询。
它显示了我从数据源请求连接时的时间戳、Integer.toHexString(connection.hashCode())、数据源的名称、我关闭连接时的时间戳以及两个时间戳之间的差异。大多数时候查询会在不到一秒的时间内结束,但昨天我有这个奇怪的延迟超过 2 分钟。
数据库上是否允许某种最大连接数,所以当它超过该限制时,数据库将我的查询排队一段时间,然后再试一次?
提前致谢。