排序
自旋锁是什么
自旋锁加锁失败后,线程会忙等待,直到它拿到锁。 自旋锁是通过 CPU 提供的 CAS 函数(Compare And Swap),在「用户态」完成加锁和解锁操作,不会主动产生线程上下文切换,所以相比互斥锁来...
redis宕机了怎么办
可以考虑使用 Redis 的高可用架构,如主从复制、哨兵模式或 Redis 集群,以保证服务的持续可用性。 主从复制 主从复制是 Redis 高可用服务的最基础的保证,实现方案就是将从前的一台 Redis 服务...
数据库锁按数据操作的颗粒度的分为哪几类
全局锁:通过flush tables with read lock 语句会将整个数据库就处于只读状态了,这时其他线程执行以下操作,增删改或者表结构修改都会阻塞。全局锁主要应用于做全库逻辑备份,这样在备份...
JAVA类加载过程详解
我们编写好的Java代码,经过编译变成.class文件,然后类加载器把.class字节码文件加载到JVM中,接着执行我们的代码,最后将类卸载出JVM。 而从类加载到虚拟机到卸载出虚拟机的这一整个生命周期...
mq如何防止重复消费
导致重复消费的原因可能出现在生产者,也可能出现在 MQ 或 消费者。 这里说的重复消费问题是指同一个数据被执行了两次,不单单指 MQ 中一条消息被消费了两次,也可能是 MQ 中存在两条一模一样的...
如何优化一条慢sql
尽量覆盖索引,减少回表 组合索引符合最左匹配原则,不然会索引失效 避免索引失效,比如不要用左模糊匹配、函数计算、表达式计算等等。 分页查询优化:该方案适用于主键自增的表,可以把Limit查...
mysql左连接与右连接的区别
上图的 left Jon 是左连接,right join 是右连接: 左连接 左连接以左表(左侧)为基础,将左表中的所有记录与右表进行连接。 即使右表中没有与左表匹配的记录,左连接仍然会返回左表中的所有记...