我在方法执行方面遇到很大的问题(我想)。我正在使用Spring boot 2.0(也已通过1.5.x测试)+ Thymeleaf 3。
案例:
[当应用程序运行大约48小时(例如)时,提交包含2个字段的简单POST表单需要花费大约。 15秒该方法不调用与数据库相关的任何内容。
@RequestMapping(value="/add", method=RequestMethod.POST)
public String addTile(Model model, @Valid @ModelAttribute("tile") Tile tile, BindingResult results) {
if(results.hasErrors()){
return "tile/add";
}
tileRepository.save(tile);
return "redirect:/";
}
经过大量测试,没有发现内存,JDBC,连接韭菜等。
从GC的角度来看,也没有任何奇怪的地方。
我使用了jProfiler,并且从方法堆栈执行开始,延迟来自方法本身。
[当我将VPS切换到另一个托管服务提供商并将会话更改为Redis时,性能可能得到了30%-40%的显着改善,但仍然无法正常工作。
我已经用jMeter测试了该应用程序的并发问题,但是一切都很完美,响应非常好。
仅当应用程序运行时间超过24h / 48h并且没有活动用户时,才会出现此问题。
JVM的版本是Java 8 OpenJDK(内部版本1.8.0_151-b12),没有任何自定义设置。。
非常感谢。