记一次杭州有赞的面试

Stormars 2018-08-31 12:25:07
本人是身在杭州的一枚小开发,最近去了杭州有赞面试,来说一说我的感受,需要对有想要去面试的小伙伴们有帮助:

首先是1面,电话面试,难度还算可以,首先是做了一个简单的自我介绍,然后介绍了两个近期的项目以及个人在这个项目中感觉比较出色或者有技术亮点的地方。然后是问了一些技术问题:
1. MySQL的索引原理(B树、B+树、B*树等),什么样的数据用Hash索引?
2. Select * from table where id = 1 和 name = ‘abc’是怎样走索引的?
3. B+和B*树索引在哪种数据引擎下用到?为什么B树索引上要用链表结构?
4. ES的主分区是怎样选举的?
5. ES写入一条数据的流程是怎样的?还未写入磁盘发生主分区节点宕机,这条数据会丢失么?
6. 通过一个索引分词去索引数据,用的什么算法?怎样计算相关度?
7. ES怎样优化分页性能?
8. 线上一台服务器发生OOM异常,如何排查问题?
9. 详述JVM内存结构?
10. JDK1.7和1.6相比,以及1.8和1.7相比,有什么特性?
11. 1.8的函数式编程中的Stream的原理是什么?1.8为何能够提高并行化?
12. 详述Paxos算法,ZK的Master节点是如何选取的?ZAB和Paxos算法的区别在哪里?
13. Delete xxx where id=1和delete xxx where age>32,分别是怎样加锁的?对并发事务是如何影响的?

然后是二面现场面试,个人感觉二面有点奇怪,因为我是面Java的,没问任何跟Java有关的问题,也没问任何开源框架,倒是问了如下一些问题:
1、MySQL数据存储的原理、主备是怎么做的?MySQL一定能确保不丢数据么?
2、InnoDB的特性,其他的数据库引擎呢?哪种场景下适合IASM引擎,你们项目中是怎么用的?
3、讲一讲MySQL各种索引结构,一级和二级索引各有什么区别?主键索引是哪种?辅助索引呢?
4、数据库锁分哪几种?每一种锁的原理是什么?尤其是间隙锁,它的工作原理是什么?如何实现可重复读的?
5、ES为何如此高效?它有哪些特性?
6、ES写入文档是怎样的?它进行数据复制的时候用的什么协议?
7、ES相关算法是怎样的?详细给一个场景然后写一下?
8、Redis如何做动态扩容和缩容?它的原理是什么?当发生动态扩容或缩容的时候,系统有哪些注意的地方?或者有问题的地方,该如何去避免
9、当去Redis上get一条数据的时候,它是怎样寻址的?有没有更好的办法?
10、详述java文件从编译到使用的过程;类中的引用类型JVM是如何处理的;class文件的格式是怎样的?JVM如何确保该class文件的合法性?

大体就是这些。我个人感觉这些问题,除非是真的在BAT这些大型互联网公司真正参与过大项目的人员,否则还确实很难答地全,很吃经验;尤其是对非互联网企业或者传统行业出来的小伙伴,确实有难度。
...全文
1771 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
王桑的一天 2018-09-03
  • 打赏
  • 举报
回复
这是面的数据库架构师??
江湖评谈 2018-08-31
  • 打赏
  • 举报
回复



你百度一些题目,然后说是你面试的?


___紫菜 2018-08-31
  • 打赏
  • 举报
回复
你记性真好!
Stormars 2018-08-31
  • 打赏
  • 举报
回复
引用 5 楼 hanjun0612 的回复:
你面的java,怎么都是一些数据库知识呢
可能这就是他们的企业文化和技术侧重点,最后还是没面上,唉。
正怒月神 2018-08-31
  • 打赏
  • 举报
回复
你面的java,怎么都是一些数据库知识呢
Stormars 2018-08-31
  • 打赏
  • 举报
回复
亲身经历,把能想起来的问题都记了下来,只是为了能帮助有想去面试的小伙伴提前准备一下。喷子们就消停点
欣赏月光 2018-08-31
  • 打赏
  • 举报
回复
装逼遭雷劈!!

590

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧