【发布时间】:2018-03-02 08:27:47
【问题描述】:
我使用 JProfiler 检查 Java 微服务,同时使用 JMeter 模拟并发用户。 使用 JProfiler 我可以看到: 导航到方法 find(),我意识到该方法具有同步关键字
在我看来,这种方法会导致线程阻塞的问题。但为什么要使用它?我可以从微服务中禁用此缓存机制吗?微服务是用 Java 编写的,它使用 Spring、Spring Boot。
谢谢
我为 Monitor History 添加了来自同一 JProfiler 快照的屏幕截图,以显示在 ResolvedTypeCache 类中花费的时间。有时时间较少,但有时时间很长。
【问题讨论】:
-
这值得一个关于jackson项目的github问题——这与spring-boot无关。
-
@BrianClozel 我从来没有这样做过。请给我一个链接好吗?
-
看起来 Hibernate 验证器真的应该是一种缓存解析类型,因为它不应该为每个读取调用都这样做?虽然 Classmate 有简单的缓存,但它不是为重锁竞争而设计的;它基于 JDK
LinkedHashMap并且必须为每个 get/put 调用同步(就像现在一样)。
标签: java spring spring-boot profiling jprofiler