09 2022 档案
摘要:随机负载均衡 public class RandomLoadBalance extends AbstractLoadBalance { private final Random random = new Random(); protected <T> Invoker<T> doSelect(List
阅读全文
摘要:ctrl+o :引入重写方法 ctrl+h ctrl+alt+u :显示继承树
阅读全文
摘要:晶体管(两种状态)->逻辑运算(与或非、异或)->加法(与、异或)->减法(求补数(取反+1) x-y=x-(2的n次-补数)=x+补数-2的n次) 减法操作:1.求补数(补码):取反+1 2.x-y=x-(2的n次-补数)=x+补数-2的n次 在计算机中,数字都是以二进制形式存储的,正数10则为0
阅读全文
摘要:同步阻塞IO:一个线程阻塞的读取IO 同步非阻塞IO:一个线程轮询多个连接 IO多路复用:一个线程把多个连接交给内核,内核去轮询。 select:轮询+数组存放注册事件集合(socket描述符) poll:轮询+链表存放注册事件集合(socket描述符) epoll:事件驱动机制,每个事件上注册有回
阅读全文
摘要:linux tcp抓包:tcpdump -nn -i eth0 port 80 IO读的是 操作系统内核socket缓存队列里的数据
阅读全文
摘要:串行垃圾回收器: serial,serialodl 并行垃圾回收期: ParallelGC,ParallelOldGC CMS:ParNewGC,ConcMarkSweepGC G1
阅读全文
摘要:简介:java.util.concurrent.locks.Lock 是一个类似于synchronized 块的线程同步机制。但是 Lock比 synchronized 块更加灵活。Lock是个接口,有个实现类是ReentrantLock。 与sychronized的区别:1.sLock则必须要用户
阅读全文
摘要:全自动ORM与半自动ORM的区别:都是对JDBC的封装,全自动把SQL也封装了,程序员不需要写sql,mybatis没有封装sql,只封装了加载驱动、建立连接、创建 Statement 对象、处理返回结果、关闭连接。 MyBatis 的 xml 映射⽂件和 MyBatis 内部数据结构之间的映射关系
阅读全文
摘要:String 还是 Hash 存储对象数据更好呢: 如果对象经常修改,则用hash。 redis单线程:执行命令单线程,IO多路复用,对大键值对的删除命令采用异步处理。 为什么不用多线程:1.性能瓶颈不在CPU 2.单线程实现简单 3.单线程不存在死锁,上下文切换问题 redis6.0之后为什么引入
阅读全文
摘要:1、PROPAGATION_REQUIRED(翻译就是需要传播):spring默认的事务传播级别,就是当上下文存在一个事务,就加入该事务,如果没有就新建事务。 举例:在一个服务里有两个方法A、B,都是默认的事务传播级别,A里调用了B,执行A时就开启了一个事务,当执行到调用方法B时,因为此时已经存在了
阅读全文
摘要:Core Container(核心模块,为其他模块提供支持):spring-core,spring-beans AOP:面向切面 Data Access(数据库支持):spring-jdbc,spring-tx,spring-orm Spring Web: spring-mvc(提供spring对m
阅读全文
摘要:1.union 连表 2.(case when then when then else end) 语法 3.模糊搜索 like ‘M%’ 4. 函数 mod(ss,3) left(ss,2),upper(s),right(ss,2),lower(s),concat(s1,s2),length(s),
阅读全文
摘要:TCP头部格式:双方端口号,序列号,确认应答号,标志位(ACK,SYN,FIN),窗口大小 序列号:初始序列号为时间循环值,每加一次数据,就累加这次数据字节数,用于解决网络包乱序 确认应答号:下一次期望收到的序列号,在这之前的已经全部收到,不用再发了,用于解决丢包问题 TCP面向连接,何为连接:⽤于
阅读全文
摘要:https://zhuanlan.zhihu.com/p/370381079
阅读全文
摘要:锁分为 独占锁与共享锁 锁的粒度有 表锁,行锁,意向锁 重点:行级锁(记录锁)类型: Record Locks:普通记录锁 Gap Locks:间隙锁,由于普通记录锁无法锁住不存在的数据,所以提出了间隙锁,间隙锁的提出仅仅是为了防止插入幻影记录(可重复读自带间隙锁) next-key锁:普通记录锁+
阅读全文
摘要:不会出现幻读 1.快照读MVCC机制不存在幻读 2.当前读通过间隙锁避免幻读
阅读全文
摘要:BEGIN和START TRANSACTION都表示开启事务,关闭总动提交 commit提交事务 关闭自动提交 SET autocommit = OFF 保存点:不全部回滚,只回滚到保存点 SAVEPOINT 保存点名称; ROLLBACK [WORK] TO [SAVEPOINT] 保存点名称;
阅读全文
摘要:free链表:指向未使用的控制块与缓存页 hash表:key:表空间号+页号 value:缓存页 脏页:修改过的缓存页 flush链表:指向脏页 lru:缓存不够时,先删除最近最少使用的。 LRU链表:只要用到这个缓存页了,就把它置与lru链表头部 预读:mysql预判你会读后面那页,提前异步读取,
阅读全文
摘要:服务器处理客户端请求:客户端进程向服务器进程发送一段文本(MySQL语句),服务器进程处理后再向客户端进程发送一段文本(处理结果)。 流程:连接管理,解析与优化(查询缓存,语法解析,查询优化),存储引擎 连接管理:每当有一个客户端进程连接到服务器进程时,服务器进程都会创建一个线程来专门处理与这个客户
阅读全文
摘要:// 发送事务消息的实例 public boolean sendMessageInTransaction( String msg) { try { Message message = new Message(); message.setKeys(msg); System.out.println("
阅读全文
摘要:概念:TC事务协调器,RM事务参与者(负责具体的回滚),TM事务管理者(决策事务是否回滚或提交) 相关资料 2PC与3PC:https://zhuanlan.zhihu.com/p/267920059 传统2PC与Seata的TA(2PC):https://blog.csdn.net/han_xue
阅读全文
摘要:ps -ef | grep rocketmq vim查找 /sjj 小n大N前进后退 top查看进程内存消耗 gitlab-ctl stop 关闭gitlab 后台启动rocketmq service :nohup ./mqnamesrv >sjj.log 2>&1 & 后台启动rocketmq b
阅读全文