摘要:
前言 很多时候,我们为了提升接口的性能,会把之前单线程同步执行的代码,改成多线程异步执行。 比如:查询用户信息接口,需要返回用户基本信息、积分信息、成长值信息,而用户、积分和成长值,需要调用不同的接口获取数据。 如果查询用户信息接口,同步调用三个接口获取数据,会非常耗时。 这就非常有必要把三个接口调 阅读全文
摘要:
前言 前段时间我踩过一个坑:在mysql8的一张innodb引擎的表中,加了唯一索引,但最后发现数据竟然还是重复了。 到底怎么回事呢? 本文通过一次踩坑经历,聊聊唯一索引,一些有意思的知识点。 1.还原问题现场 前段时间,为了防止商品组产生重复的数据,我专门加了一张防重表。 如果大家对防重表,比较感 阅读全文
摘要:
前言 我之前写过两篇关于优化相关的问题:《聊聊sql优化的15个小技巧》和《聊聊接口性能优化的11个小技巧》,发表之后,在全网受到广大网友的好评。阅读量和点赞率都很高,说明了这类文章的价值。 今天接着优化这个话题,我们一起聊聊Java中代码优化的30个小技巧,希望会对你有所帮助。 1.用String 阅读全文
摘要:
前言 作为Java程序员的你,不知道有没有踩过一些基础知识的坑。 有时候,某个bug查了半天,最后发现竟然是一个低级错误。 有时候,某些代码,这一批数据功能正常,但换了一批数据就出现异常了。 有时候,你可能会看着某行代码目瞪口呆,心里想:这行代码为什么会出错? 今天跟大家一起聊聊99%的Java程序 阅读全文
摘要:
前言 接口性能问题,对于从事后端开发的同学来说,是一个绕不开的话题。想要优化一个接口的性能,需要从多个方面着手。 其实,我之前也写过一篇接口性能优化相关的文章《聊聊接口性能优化的11个小技巧》,发表之后在全网广受好评,感兴趣的小伙们可以仔细看看。 本文将会接着接口性能优化这个话题,从实战的角度出发, 阅读全文
摘要:
前言 最近测试给我提了一个bug,说我之前提供的一个批量复制商品的接口,产生了重复的商品数据。 追查原因之后发现,这个事情没想象中简单,可以说一波多折。 1. 需求 产品有个需求:用户选择一些品牌,点击确定按钮之后,系统需要基于一份默认品牌的商品数据,复制出一批新的商品。 拿到这个需求时觉得太简单了 阅读全文
摘要:
前言 对于从事后端开发的同学来说,线程安全问题是我们每天都需要考虑的问题。 线程安全问题通俗的讲:主要是在多线程的环境下,不同线程同时读和写公共资源(临界资源),导致的数据异常问题。 比如:变量a=0,线程1给该变量+1,线程2也给该变量+1。此时,线程3获取a的值有可能不是2,而是1。线程3这不就 阅读全文
摘要:
前言 在java的庞大体系中,其实有很多不错的小工具,也就是我们平常说的:轮子。 如果在我们的日常工作当中,能够将这些轮子用户,再配合一下idea的快捷键,可以极大得提升我们的开发效率。 今天我决定把一些压箱底的小工具,分享给大家,希望对你有所帮助。 本文会分享17个我们日常工作中一定会用得到的小工 阅读全文
摘要:
前言 前一段时间,有同事使用ThreadLocal踩坑了,正好引起了我的兴趣。 所以近期,我抽空把ThreadLocal的源码再研究了一下,越看越有意思,发现里面的东西还真不少。 我把精华浓缩了一下,汇集成了下面11个问题,看看你能顶住第几个? 1. 为什么要用ThreadLocal? 并发编程是一 阅读全文
摘要:
前言 并发编程是一项非常重要的技术,无论在面试,还是工作中出现的频率非常高。 之前我发表的一篇《聊聊并发编程的10个坑》,在全网广受好评。说明了这类文章还是比较有价值的,接下来,打算继续聊聊并发编程这个话题。 并发编程说白了就是多线程编程,但多线程一定比单线程效率更高? 答:不一定,要看具体业务场景 阅读全文