聊聊接口性能优化的11个小技巧(代码片段)

苏三说技术 苏三说技术     2022-11-28     794

关键词:

mq

在代码块上加锁

先看看如何在方法上加锁:

异步调用

慢查询开关
  • slow_query_log_file 慢查询日志存放的路径
  • long_query_time 超过多少秒才会记录日志
  • 通过mysql的set命令可以设置:

    预警 的功能。

    架构图如下:

    我们可以用它监控如下信息:

  • 接口响应时间
  • 调用第三方服务耗时
  • 慢查询sql耗时
  • cpu使用情况
  • 内存使用情况
  • 磁盘使用情况
  • 数据库使用情况
  • 等等。。。

    它的界面大概长这样子:可以看到mysql当前qps,活跃线程数,连接数,缓存池的大小等信息。

    如果发现数据量连接池占用太多,对接口的性能肯定会有影响。

    这时可能是代码中开启了连接忘了关,或者并发量太大了导致的,需要做进一步排查和系统优化。

    截图中只是它一小部分功能,如果你想了解更多功能,可以访问Prometheus的官网:https://prometheus.io/

    11.3 链路跟踪

    有时候某个接口涉及的逻辑很多,比如:查数据库、查redis、远程调用接口,发mq消息,执行业务代码等等。

    该接口一次请求的链路很长,如果逐一排查,需要花费大量的时间,这时候,我们已经没法用传统的办法定位问题了。

    有没有办法解决这问题呢?

    用分布式链路跟踪系统:skywalking

    架构图如下:通过skywalking定位性能问题:在skywalking中可以通过traceId(全局唯一的id),串联一个接口请求的完整链路。可以看到整个接口的耗时,调用的远程服务的耗时,访问数据库或者redis的耗时等等,功能非常强大。

    之前没有这个功能的时候,为了定位线上接口性能问题,我们还需要在代码中加日志,手动打印出链路中各个环节的耗时情况,然后再逐一排查。

    如果你用过skywalking排查接口性能问题,不自觉的会爱上它的。如果你想了解更多功能,可以访问skywalking的官网:https://skywalking.apache.org/

    最后说一句(求关注,别白嫖我)

    如果这篇文章对您有所帮助,或者有所启发的话,帮忙扫描下发二维码关注一下,您的支持是我坚持写作最大的动力。

    求一键三连:点赞、转发、在看。

    关注公众号:【苏三说技术】,在公众号中回复:面试、代码神器、开发手册、时间管理有超赞的粉丝福利,另外回复:加群,可以跟很多BAT大厂的前辈交流和学习。

     

    聊聊java中代码优化的30个小技巧(代码片段)

    前言我之前写过两篇关于优化相关的问题:《聊聊sql优化的15个小技巧》和《聊聊接口性能优化的11个小技巧》,发表之后,在全网受到广大网友的好评。阅读量和点赞率都很高,说明了这类文章的价值。今天接着... 查看详情

    聊聊接口性能优化的11个小技巧(代码片段)

    前言接口性能优化对于从事后端开发的同学来说,肯定再熟悉不过了,因为它是一个跟开发语言无关的公共问题。该问题说简单也简单,说复杂也复杂。有时候,只需加个索引就能解决问题。有时候,需要做... 查看详情

    聊聊接口性能优化的11个小技巧(代码片段)

    前言接口性能优化对于从事后端开发的同学来说,肯定再熟悉不过了,因为它是一个跟开发语言无关的公共问题。该问题说简单也简单,说复杂也复杂。有时候,只需加个索引就能解决问题。有时候,需要做... 查看详情

    聊聊sql优化的15个小技巧(代码片段)

    前言sql优化是一个大家都比较关注的热门话题,无论你在面试,还是工作中,都很有可能会遇到。如果某天你负责的某个线上接口,出现了性能问题,需要做优化。那么你首先想到的很有可能是优化sql语句,因为它的改造成本相... 查看详情

    聊聊sql优化的15个小技巧(代码片段)

    前言sql优化是一个大家都比较关注的热门话题,无论你在面试,还是工作中,都很有可能会遇到。如果某天你负责的某个线上接口,出现了性能问题,需要做优化。那么你首先想到的很有可能是优化sql语句ÿ... 查看详情

    聊聊sql优化的15个小技巧(代码片段)

    前言sql优化是一个大家都比较关注的热门话题,无论你在面试,还是工作中,都很有可能会遇到。如果某天你负责的某个线上接口,出现了性能问题,需要做优化。那么你首先想到的很有可能是优化sql语句ÿ... 查看详情

    从20s优化到500ms,我用了这三招(代码片段)

    ...其实,我之前也写过一篇接口性能优化相关的文章《聊聊接口性能优化的11个小技巧》,发表之后在全网广受好评,感兴趣的小伙们可以仔细看看。本文将会接着接口性能优化这个话题,从实战的角度出发ÿ 查看详情

    学完python,咱们聊聊sql优化的15个小技巧(代码片段)

    SQL优化是一个大家都比较关注的热门话题,无论你在面试,还是工作中,都很有可能会遇到。如果某天你负责的某个线上接口,出现了性能问题,需要做优化。那么你首先想到的很有可能是优化sql语句,因... 查看详情

    java代码优化的30个小技巧(代码片段)

    ...的情况。比如现在有个需求:要用get请求调用第三方接口,url后需要拼接多个参数。以前我们的请求地址是这样拼接的:Stringurl=“http://susan.sc.cn?userName=”+use 查看详情

    聊聊保证线程安全的10个小技巧(代码片段)

    ``前言对于从事后端开发的同学来说,线程安全问题是我们每天都需要考虑的问题。线程安全问题通俗的讲:主要是在多线程的环境下,不同线程同时读和写公共资源(临界资源),导致的数据异常... 查看详情

    接口性能优化技巧,干掉慢代码!(代码片段)

    ...ff1a;https://juejin.cn/post/7043423820543164453/背景哪些问题会引起接口性能问题?问题解决1、慢查询(基于mysql) 查看详情

    聊聊数据库建表的15个小技巧(代码片段)

    前言对于后端开发同学来说,访问数据库,是代码中必不可少的一个环节。系统中收集到用户的核心数据,为了安全性,我们一般会存储到数据库,比如:mysql,oracle等。后端开发的日常工作,需要... 查看详情

    10个小技巧助您写出高性能的asp.netcore代码(代码片段)

    ...篇文章我们来聊一聊如何提升并优化ASP.NETCore应用程序的性能,本文的大部分内容来自翻译,当然中间穿插着自己的理解,希望对大家有所帮助!话不多说开始今天的主题吧!我们都知道性能是公共网站取得成功的关键因素之一... 查看详情

    聊聊服务器性能优化~(建议收藏)(代码片段)

    ...渺。听多了架构优化,数据库优化,今天我们来聊聊服务器优化。我们开发的软件服务需要在服务器上运行,所以服务器性能代表了软件的性能上限,因此服务器性能调优是个十分重要的环节,然而大部分同... 查看详情

    .net性能优化小技巧(代码片段)

    .NET性能优化小技巧Intro之前做了短信发送速度的提升,在大师的指导下,发送短信的速度有了极大的提升,学到了一些提升.NET性能的一些小技巧HttpClient优化关于使用HttpClient,大概很多人都知道尽量使用单例以提升HttpClient的性... 查看详情

    聊聊dotnet7对bool与字符串互转的底层性能优化(代码片段)

    本文也叫跟着StephenToub大佬学性能优化系列。大家都知道在.NET7有众多的性能优化,其中就包括了对布尔和字符串互转的性能优化。在对布尔和字符串的转换的性能优化上,有着非常巧妙的思路,值得写篇博客记录在 ... 查看详情

    9个小技巧让你的ifelse看起来更优雅(代码片段)

    ...人代码时,都会发现类似的场景,那么我们本文就来详细聊聊,有没有什么方法可以让我们避免来写这么多的ifelse呢?我们本文提供了9种方法来解决掉那些“烦人”的ifelse,一起来看吧。1.使用return我们使用return?去掉多余的else... 查看详情

    android性能优化—布局优化技巧(代码片段)

    ...理管理内存,app的优化启动的方式来提升应用程序的性能。实际上界面布局也会对应用程序的性能产生比较大的影响,如果布局写得嵌套多,重复布局多次出现,一个小的布局利用很多控件 查看详情