使用 PSM 监控数据库性能
PSM 会捕获由您的 ThingWorx 应用程序发起的大多数数据库查询。其所配置的仪表板可突出显示数据库级别上的慢速执行语句、连接池使用情况并捕获发送到数据库的绑定变量。
PSM 会监控由用户发起的事务。因此,PSM 仅跟踪面向用户的数据库事务。如果在计划程序、计时器或异步进程中发生数据库性能问题,则 PSM 不会收集相应的查询。
在性能缓慢的任何时段,您都可以跟踪相应的数据库事务。右键单击任意图表或仪表板可打开查询视图。例如,如果确认了 CPU 峰值或慢速 PurePath,则可以详细了解在该期间发生的相应数据库查询。
在以下示例中,确定了慢速数据表查询及其相应的数据库查询后,请在执行 QueryDataTableEntries API 的应用程序中优化代码:
PMS 会在您的应用程序中显示连接池的详细信息。数据库仪表板显示了连接池的整体使用情况,如下例所示:
ThingWorx 会使用一个连接池。将池连接的默认值设置为 100。如果同时使用池中的所有连接,则应用程序可能会无响应。要解决此问题,请在分配其他连接之前,检查是否存在占用连接超过所需时间的慢速事务。
ThingWorx 会使用以下连接池:
C3P0 库管理的内置持久化方案提供工具连接。
使用 Apache 库跟踪创建自数据库事物的其他次要 JDBC 连接。
在 PSM 数据库概述仪表板中,您可以在连接池饱和时隔离时间段。您可以检查在指定时间执行的查询。这将有助于您诊断连接池问题。您应在 ThingWorx 应用程序中解决占用连接时间更长的基础查询。