摘要:
1:普通的Redis分布式锁的缺陷我们在网上看到的redis分布式锁的工具方法,大都满足互斥、防止死锁的特性,有些工具方法会满足可重入特性。如果只满足上述3种特性会有哪些隐患呢?redis分布式锁无法自动续期,比如,一个锁设置了1分钟超时释放,如果拿到这个锁的线程在一分钟内没有执行完毕,那么这个锁就 阅读全文
摘要:
最近排查一些MySQL的问题,会经常用到 show processlist,所以在这里把这个命令总结一下,做个备忘,以备不时只需。首先是几条常用的SQL。1、按客户端 IP 分组,看哪个客户端的链接数最多 select client_ip,count(client_ip) as client_num 阅读全文
摘要:
1,查看数据库的隔离级别:mysql> select @@tx_isolation;2,去查看先当前库的线程情况:mysql> show processlist; 没有看到正在执行的慢SQL记录线程,再去查看innodb的事务表INNODB_TRX,看下里面是否有正在锁定的事务线程,看看ID是否在s 阅读全文
摘要:
组合模式就是对象嵌套对象的模式,组合模式是以树形结构呈现。 一、概念①、什么是组合模式?组合模式又叫部分整体模式,是用于把一组相似的对象当做一个单一的对象。组合模式依据树型结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构性模式,它创建了对象组的树形结构。②、主要解决的问题?它在树 阅读全文
摘要:
同步刷盘、异步刷盘RocketMQ的消息是存储到磁盘上的,这样既能保证断电后恢复,又可以让存储的消息量超出内存的限制。RocketMQ为了提高性能,会尽可能地保证磁盘的顺序写。消息在通过Producer写入RocketMQ的时候,有两种写磁盘方式:1)异步刷盘方式:在返回写成功状态时,消息可能只是被 阅读全文
摘要:
redis常用的方式有单节点、主从模式、哨兵模式、集群模式。 单节点在生产环境基本上不会使用,因为不能达到高可用,且连RDB或AOF备份都只能放在master上,所以基本上不会使用。另外几种模式都无法避免两个问题:1、异步数据丢失。2、脑裂问题。 所以redis官方针对这种情况提出了红锁(Redlo 阅读全文
摘要:
在分布式环境中,很多场景,如:秒杀、ID生成... 都需要分布式锁。分布式锁的实现,可以基于redis的setnx,zk的临时节点。。。今天我们介绍一种redis官方推荐的方法——redission。1、pom.xml <dependency> <groupId>org.redisson</grou 阅读全文
摘要:
kafka是需要集成zookeeper的; 在本电脑中:zookeeper的位置是:D:\data\tools\zookeeper-kafka-3.6.2\bin;kafka的位置是:D:\data\tools\kafka_2.12-2.2.1 zookeeper的启动是点击:zkServer.cm 阅读全文
摘要:
这个问题在面试中经常会被问到的,synchronized在1.6之后做了什么优化,其实对synchronized一些底层的理解还是很重要的。 一:Synchronized实现原理1、Java对象头首先,我们要知道对象在内存中的布局:已知对象是存放在堆内存中的,对象大致可以分为三个部分,分别是对象头、 阅读全文
摘要:
前言Java内存模型是Java程序员学习JVM前必须要掌握的基础知识 ,也是面试中经常会被问到的问题点。但是要真正完全弄清楚它,还是有点难度的,因为Java内存模型是不可见的,它并不是一个真实的东西,它只是一个概念、一个规范。 计算机硬件体系介绍,CPU多级缓存要想完全搞清楚Java内存模型,先要了 阅读全文