问题详情:请求一个接口,在服务器上第一次请求特别慢在 20-40s,随后请求正常。本地测都是正常的,无论是不是第一请求,都可以在 2s 内响应。
下面贴出测出的一些数据
1.两个 service 都有事务,但应该与事务无关,去除事务后耗时是一样的 2.“保存耗时” 在 20-40s,其他耗时基本在 200ms 以内 3.环境:springboot spring-data-jpa
applyService
@Override
public Apply save(LawCase lawCase) {
long l = System.currentTimeMillis();
LawCase law = lawCaseService.save(lawCase);
long l1 = System.currentTimeMillis();
System.out.println("保存耗时" + (l1 - l));
Apply apply = new Apply();
// set 一些属性值
applyRepository.save(apply);
long l2 = System.currentTimeMillis();
System.out.println("保存记录耗时" + (l2 - l1));
return apply;
}
lawCaseService
@Override
public LawCase save(LawCase lawCase) {
// 处理关系和初始化标题顺序不可颠倒
long l = System.currentTimeMillis();
handleRelation(lawCase);
long l1 = System.currentTimeMillis();
initTitle(lawCase);
long l2 = System.currentTimeMillis();
lawCaseRepository.save(lawCase);
long l3 = System.currentTimeMillis();
System.out.println("处理关系" + (l1 - l));
System.out.println("初始化标题" + (l2 - l1));
System.out.println("保存 db" + (l3 - l2));
return lawCase;
}
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.