Java面试小结(一)

一、你是如何实现分布式锁?

1、zookeeper

2、Redis

3、memcached

    参考http://www.cnblogs.com/rwxwsblog/p/6046034.html

延伸:一万个人抢100个红包,如何实现(不用队列),如何保证2个人不能抢到同一个红包,可用分布式锁


二、nginx的请求转发算法,如何配置根据权重转发

三、线程的状态、线程的阻塞的方式、线程如何退出结束
为什么线程执行要调用start而不是直接run
(直接run,跟普通方法没什么区别,先调start,run才会作为一个线程方法运行)

四、sleep、wait的区别、可重入锁中对应的wait和notify
五、用hashmap实现Redis有什么问题(死锁,死循环,可用ConcurrentHashmap)
六、hashmap的底层实现、遍历hashmap的三种方式;LinkedHashmap的底层实现
七、JUC包的使用 ConcurrentHashmap底层实现 、ConcurrentHashmap的锁是如何加的?是不是分段越多越好
八、 jvm内存模型!!!,java内存模型;如何把java内存的数据全部dump出来
九、讲讲MySql的索引有哪些、索引原理、B+与B树区别。若果让你实现索引,讲讲你          的想法。
十、了解NIO吗? IO会阻塞吗?readLine是不是阻塞的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值