Java代码优化--接口优化

本文分享了作者在优化接口响应速度方面的经验。通过打印处理时间定位慢速代码,发现并修复了全量SQL返回、嵌套循环查询及Redis缓存穿透问题,将接口响应时间从2秒降低到200毫秒,强调了合理设计和遵循规则的重要性。
摘要由CSDN通过智能技术生成

Java代码优化–接口优化

最近换了一家新公司,面试领导告诉我说接口响应很慢,然分配任务给我去优化接口,然后就有了下面的一些遭遇。
在不了解业务的情况下,需要先找测试定位接口,找到接口之后,开始品味代码了。我个人优化的方式是在每一次的逻辑处理处,打印出处理时间的长度,类似下图:
在这里插入图片描述
这样很容易知道这段代码处理所需要的时间,那么也能知道整个接口中,那些地方处理时间过长。通过日志输入定位到范围之后,开始查看代码内部的处理逻辑。

在这里插入图片描述在这里插入图片描述

这是一个很简单的根据uid查询出所有信息,大家看我画出来的地方,用到的参数只有2个,但是sql的返回参数却是全量返回了。如果用的是自己接下来这里很多刚入门的同学都会犯这个错误。这里我还是解释一下,返回全量的影响:1、数据库用的是mysql,懂得人都知道,大部分数据查询是会回表的,但是如果全部命中是可以减少回标操作的 ,从而减短查询消耗的时间 ;2、数据量返回少了,传输的速度就快了;所以这里我修改了部分参数返回,速度从2秒缩短到200毫秒。可想而知一个简单的

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值