<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[mxhnb666的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/mxhnb666</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; mxhnb666]]></copyright><item><title><![CDATA[秒杀扣库存，一人一单，缓存击穿用redisson怎么解决]]></title><link>https://blog.csdn.net/mxhnb666/article/details/163948126</link><guid>https://blog.csdn.net/mxhnb666/article/details/163948126</guid><author>mxhnb666</author><pubDate>Fri, 21 Aug 2026 15:48:20 +0800</pubDate><description><![CDATA[问题：库存剩 1 件，用户A和用户B同时查到有库存，都去扣，库存变 -1，超卖了。]]></description><category></category></item><item><title><![CDATA[缓存击穿怎么用redis互斥锁解决]]></title><link>https://blog.csdn.net/mxhnb666/article/details/163918526</link><guid>https://blog.csdn.net/mxhnb666/article/details/163918526</guid><author>mxhnb666</author><pubDate>Thu, 20 Aug 2026 14:42:34 +0800</pubDate><description><![CDATA[你的满分回答话术：“面试官您好，缓存击穿是指某个热点 Key 在缓存过期失效的瞬间，大量并发请求同时到达，导致所有请求瞬间穿透缓存，直击数据库，造成数据库压力暴增甚至宕机。在实际项目中，我通常有两种解决方案：第一种是互斥锁方案。当缓存失效时，利用 Redis 的 SETNX 命令去抢分布式锁。只有抢到锁的线程才去查询数据库并重建缓存，没抢到锁的线程则短暂休眠后重试查缓存。这种方案保证了数据的强一致性，但牺牲了一点点并发性能。第二种是逻辑过期方案。]]></description><category></category></item><item><title><![CDATA[包装类与基本类型拆包时的空指针异常，面试时怎么回答]]></title><link>https://blog.csdn.net/mxhnb666/article/details/163825254</link><guid>https://blog.csdn.net/mxhnb666/article/details/163825254</guid><author>mxhnb666</author><pubDate>Mon, 17 Aug 2026 14:50:21 +0800</pubDate><description><![CDATA[如果你不在乎性能那点微小差异，也可以直接把方法的返回值改成包装类 Boolean，这样就不需要拆箱了，null 就可以合法返回。注：这里可以顺便提一下你之前遇到的 Redis 锁的坑，面试官会非常喜欢这种实战经验。在拆之前，先看看里面有没有东西。-128 到 127。]]></description><category></category></item></channel></rss>