面试--知识点

 

1、分布式缓存一致性

  • 读的时候,先读缓存,缓存没有的话,就读数据库,然后取出数据后放入缓存,同时返回响应。
  • 更新的时候,先删除缓存,然后更新数据库。

zookeeper 临时节点解决分布式锁

canal 框架

 

 

2、缓存的应用场景,为什么使用缓存

查询需要经过复杂逻辑计算

并发访问请求比较多的时候

高并发,高性能

第一次慢以后都快

缓存出现的问题

数据不一致

缓存穿透

缓存雪崩

 

3、为什么String是final

出于安全考虑

String很多方法是navtive本地方法,重写不安全

 

4、消息中间件在高并发情况下,保证消息不丢失

ack确认

 

5、HashMap

1.8  基础数据+链表+红黑树

如何解决hash冲突问题

链表存放hash  值相等内部不同的放到一个链表中

初始容量16,负载因子0.75   每次超过16*0.75=12  扩容2倍

为什么0.75

空间利用率高,冲突少,折中方案

 

posted @ 2020-02-26 21:18  jentary  阅读(121)  评论(0)    收藏  举报