喜马拉雅面经

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_38028611/article/details/99358859
前言
2019年3月14号周四中午大概12点我正在吃中饭,收到喜马拉雅HR电话,通知问我有没有兴趣面试他们的Java开发工程师。(ps:我没主动投过,我也不知道他们哪里弄来的我的简历)

废话不多说,当然愿意面试,HR说后续安排电话面试

一面
电话面试,第二天3月15号上午

简单介绍一下你最近做的项目?
我扯了一大堆,我扯到了限流

说一下你项目中限流是如何做的?
我答用令牌,获取令牌的方式实现限流

说一下令牌桶算法比普通counter计数器实现的限流优势在哪?或者说传统的counter计数器实现缺点在哪?
没答上来

说一下悲观锁和乐观锁
简答介绍悲观锁和乐观锁的含义,有对具体锁的实现举了例子,比如乐观锁CAS实现,悲观锁synchronized

又引入了乐观锁CAS的ABA问题

MySQL的间隙锁
我直接把临建锁、间隙锁、记录锁原理整了一遍,以及锁如何退化的。

SQL中的join使用的注意事项,或者join的优化点在哪?
我只提到了索引,其他没想到,答的不好。

全文检索es有没有了解过,倒排索引原理知道吗?
我说了解ELK这一套开源的日志全文检索架构。

倒排索引原理没说上来,这里准备不充分。

二面
现场面试,3月20号周三,下班之后6点多到的喜马拉雅

锁有哪些?各种实现原理以及具体实现各举个例子
悲观锁和乐观锁、可重入锁和不可冲入锁、排他锁和共享锁

mysql的锁忘了说了orz

说一下内存可见性
其实就是java的volatile实现原理,我补充了volatile的禁止指令重排序的原理

这里我扯到了synchronized的jvm底层实现原理,AQS工具包

数据结构和算法
二分法和快排说一下

说说你知道的设计模式。并举例子jdk中的实现
看过Spring源码嘛?SpringIOC 和Aop实现原理说一下
说一下http实现原理?
说一下tcp半连接攻击,如何避免?
现需要设计一个海量数据系统。你会怎么设计?
说一下缓存?
说一下你大学到工作中。你认为进步最大的是什么?
————————————————
版权声明:本文为CSDN博主「不平凡的凡人」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_38028611/article/details/99358859

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值