面试阿里n+1次感悟

前面已经面过n次了,都失败了,从最开始还是小小白的时候到现在!

面试

1 第一步,自我介绍:

个人答题方式:简练的说出自己毕业于什么大学,何时毕业;[本科],自学入行,平时研究java的方式,擅长哪些中间件,技术;自己工作中涉及的一些亮点项目,github自己的两个项目【tcc,分库分表】

控制在2分钟左右,擅长的东西务必熟悉精通,接下来很有可能基于你的项目切入

 

2 第二步:面试问题

    由我项目中涉及的自己开发的分库分表组件切人

   1 我的路由算法: hash一致

   1.1 项目怎么实现的一致性算法

    1.2 hash一致性算法怎么实现,有什么好处

     1.3 会有hash碰撞问题吗,切到hashmap的hash碰撞相关问题

   2 还有哪些路由算法:

       取模,时间片等

     2.1 为什么不用取模2.2  取模优势:[算法更简单,免去hash环的加载],取模更容易平滑扩容

     2.3  如何实现多个算法 多个路由算法引发的一些概念问题:面向抽象编程,依赖倒置

3设计模式:[选几个自己熟悉的讲 我讲了下面三个]

模板方法

工厂

单例:单例的场景:[大对象一次加载,降低内存,IO,带宽等]|[spring单例降低内存消耗] 懒汉单例安全的两者实现[同步,静态内部类]

4 由分库分表引入到mysql

1 mysql 设计架构

2 innodb存储引擎相关问题

3 b+树,查询复杂度,b+树如何实现平衡,树如何防止成为链表 ,b+树的实现

4 索引如何建立:

5 索引如何调优: 

 

 

 

5 最后:

面试官的建议建议基础待加强,设计模式需要系统深入

询问能否现场面:回答可以

 

个人感悟: 1表达很重要:会要简明扼要回答; 不会,就说不太能回答[然后询问一些场景或让面试官给下方向,然后给出自己的一些答案,不要冗余回答]

                 2 基础很重要,java基础,数据结构基础,线程基础,算法基础! 

    

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值