由于我们的 Web 应用程序正在遭受缓慢的退化,我们决定监控我们的应用程序性能并衡量个人操作。
例如,我们将测量每个请求的持续时间、单个操作(如编辑客户或创建约会、搜索合同)的持续时间。在大多数情况下,数据库是这些操作的瓶颈。
我预计最终数据会非常大,因为我们将针对每个请求收集 1-5 个单独的操作。
当然,将每个元素都插入数据库是无稽之谈,因为这会进一步减慢每个请求。
什么是存储和评估这些每个请求数据的好策略。我想过有一个附加的全局队列对象和一个单独的线程来清空队列并处理持久存储/文件。但是在哪里存储这些数据?有没有用于这种可视化的预建工具?
我们使用java、spring、混合hibernate+jdbc+pl/sql、oracle。
不过,这个问题应该与语言无关。
编辑:测量将在很长一段时间内在生产中进行。