tfzq & dml

MVCC如何理解

https://blog.csdn.net/DaiZZZZZ/article/details/89291046

  • MVCC使得数据库读不会对数据加锁,select不会加锁,提高了数据库的并发处理能力;
  • 借助MVCC,数据库可以实现RC,RR等隔离级别 

不可重读 的mvcc(rr级别下特有

 

 

session 1

session 2
select a from test; return a = 10  
start transaction;  
update test set a = 20;  
  start transaction;
  select a from test; return ?
commit;  
  select a from test; return ?
  • 隔离级别为 READ-UNCOMMITTED 情况下: 
    session 1 commit前后 session 2 去查看都会看到的是修改后的结果 a = 20

  • 隔离级别为 READ-COMMITTED 情况下: 
    session 1 commit 前查看到的还是 a =10 , commit之后看到的是 a = 20

  • 隔离级别为 REPEATABLE-READ, SERIALIZABLE 情况下: 
    session 1 commit前后 session 2 去查看都会看到的是修改后的结果 a = 10

 

为什么是三次握手

如果两次,那么B无法确定B的信息A是否能收到,所以如果B先说话,可能后面的A都收不到,会出现问题 。

  如果四次,那么就造成了浪费,因为在三次结束之后,就已经可以保证A可以给B发信息,A可以收到B的信息; B可以给A发信息,B可以收到A的信息。

 

hashmap扩容rehash

2倍扩容

因此,我们在扩充HashMap的时候,不需要像JDK1.7的实现那样重新计算hash,只需要看看原来的hash值新增的那个bit是1还是0就好了,是0的话索引没变,是1的话索引变成“原索引+oldCap”,

 

spingmvc处理流程

 

Treemap如何使用

实现Comparator接口

 

阻塞非阻塞、同步异步

netty 与 同步、异步、阻塞、非阻塞

 

ConcurrentHashMap  1.7 1.8

1.7 分段锁segment +数组链表

1.8 cas+数组链表红黑树

https://www.cnblogs.com/huangjuncong/p/9478505.html

 

隔离级别spring如何添加

事务隔离级别 脏读 spring 测试

 

@Transactional(isolation = Isolation.READ_UNCOMMITTED)

 

 链表有环

 https://www.cnblogs.com/kaituorensheng/p/3395347.html

 

 

 

 

redis集群有哪几种

其他

 

 

数据库设计步骤 

1)表结构、关联健确定

2)索引

3)数据量评估-分表分库

 

ArrayList & LinkedList

NIO如何理解

冒泡排序

用过什么设计模式 yet

其他

HashMap和ConcurrentHashMap

 

 

 

 

posted on 2019-08-22 13:59  silyvin  阅读(191)  评论(0)    收藏  举报