我正在努力为带有自定义JFR事件的异步servlet请求处理建模。我面临的挑战是,在异步处理中,一个请求可能会被#dispatch()
多次。这意味着整个请求处理链可能会多次执行,在不同的线程中会相隔一段时间。如何使用自定义JFR事件对此进行建模?
对我有帮助的要么是“父”事件的概念(可能在不同的线程中),要么是事件的暂停和恢复。
编辑
来说明一下这个问题。异步请求可能需要100秒的挂钟时间来处理。然而,在Servlet#service()
方法中,实际的处理可能只需要4秒的用户时间:
Servlet#service()
方法返回,AsyncContext
startedServlet#service()
方法返回,AsyncContext
80-81在线程A中,方法返回,<代码>D15 started
我只对在这三个线程中为这四个持续时间生成事件,然后将它们与单个请求关联起来感兴趣。
https://stackoverflow.com/questions/56221655
复制相似问题