面试
金大大jhz
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
面试题:ConcurrentHashMap 1.7和1.8的区别
前言面试官问到这个我觉得送分了,觉得自己答的挺好,面完看看其实发现还是有一些没答全,写个帖子记录下。ConcurrentHashMap 1.7和1.8的区别1、整体结构1.7:Segment + HashEntry + Unsafe1.8: 移除Segment,使锁的粒度更小,Synchronized + CAS + Node + Unsafe2、put()1.7:先定...原创 2019-03-20 22:06:17 · 35412 阅读 · 25 评论 -
一道Netty面试题:boss线程池和worker线程池能不能合在一起?
前言这篇帖子我估计要反复修改,我不确定面试官是不是随口问的(就是可能他自己也没仔细想过这个问题。。。),我当时回答的是不能,我确实不大明白为啥要合在一起,合在一起你也是要有线程去处理连接,一部分线程去处理请求。而且放在一起不是增加复杂度(耦合)了吗?面试的时候思路容易不清晰,其实这段还是看过的,而且之前的帖子里还写过,netty源码默认就是支持的,只不过平时使用的都是主从多线程reactor。...原创 2019-04-03 23:47:23 · 9150 阅读 · 1 评论 -
面试题分享
前言面试了三个月,也拿到了一些比较满意的offer,就把面试题发一下把,公司名字就不说了,因为都没去(我是菊厂员工,实在不愿意这时候离公司而去,应该现在有很多人跟我做了一样的选择吧)面试题因为前两个月的记在本子上,等以后整理了再发,先整理下最近的吧,小厂的和hr面也不发了:1、个人介绍和项目以及项目中的优化点2、ConcurrentHashMap 1.7和1.8的区别,项目中大...原创 2019-05-23 23:08:59 · 398 阅读 · 1 评论 -
面试题:从图的遍历到深拷贝的实现
前言非常好的一道面试题,leetcode上是没有的,记录下。原题public class N{ public int val; public List<N> list;}val可以唯一标示一个对象,即不同对象的val值都不相同,给定如下类,要求实现深拷贝,方法定义如下:N dp(N source) { //待实现}分析相信...原创 2019-06-13 23:40:23 · 587 阅读 · 0 评论 -
Redis面试题记录--缓存双写情况下导致数据不一致问题
前言这个去年就看到过项目中的实现方案,结果今天问还是忘了,记录下。1、问题描述在高并发的情况下,如果当删除完缓存的时候,这时去更新数据库,但还没有更新完,另外一个请求来查询数据,发现缓存里没有,就去数据库里查,还是以上面商品库存为例,如果数据库中产品的库存是100,那么查询到的库存是100,然后插入缓存,插入完缓存后,原来那个更新数据库的线程把数据库更新为了99,导致数据库与缓存不一致...原创 2019-06-11 23:06:20 · 1211 阅读 · 0 评论 -
面试题:Zookeeper是如何解决脑裂问题
前言这是分布式系统中一个很实际的问题,书上说的不是很详细,整理总结一下。1、脑裂和假死1.1 脑裂官方定义:当一个集群的不同部分在同一时间都认为自己是活动的时候,我们就可以将这个现象称为脑裂症状。通俗的说,就是比如当你的 cluster 里面有两个结点,它们都知道在这个 cluster 里需要选举出一个 master。那么当它们两之间的通信完全没有问题的时候,就会达成共识,选出其中...原创 2019-06-20 23:29:52 · 19218 阅读 · 5 评论 -
不用饿汉和锁实现线程安全的单例模式
前言面试官不让用饿汉和锁,要求实现线程安全的单例,记录下使用原子类的解法;代码SingletonWithoutLock.javaimport java.util.concurrent.atomic.AtomicReference;/** * @author jhz * @date 19-8-10 下午11:55 */public class SingletonWit...原创 2019-08-11 00:26:52 · 338 阅读 · 0 评论
分享