26届大三-淘天-暑期实习一面面经
BIT大三找一个Java暑期实习,全程被拷打RPC项目,纯问项目相关问题问了50分钟,第二天看官网流程应该是挂了
自我介绍
然后问RPC项目
介绍RPC项目中用到哪些中间件相关的东西,然后具体它在这里面是起到什么样的一个作用?
一个RPC的协议里面都主要包含哪些内容?
比如说你调一个IP的话,你在客户端从发起调用拿到响应的整个过程大概是怎样?
部署的时候用了多少台服务器?
你的客户端在找到要哪台服务器,要连哪台服务器的时候,这个过程是怎样的了解呢?
对于Netty的外内存是否有过调优?(因为RPC项目里提到了netty吧)
同步异步阻塞非阻塞怎么理解?
多路复用在你的 RPC框架里面具体是怎么体现的?
多线程在Netty里是怎么用的?
Work线程一般设置的话,线程数设置多少怎么判断?
业务逻辑的线程池设置线程数为多少?是基于什么来的?
有用到Redis吗?
Redis如何实现一个消息队列?
MySQL的索引有做过什么优化吗?
联合索引的字段是越多越好吗?
深度翻页的问题有没有了解过,如何解决?
并发编程里面通常要去解决线程安全的问题都有一些什么样的方法?
Atomic原子类底层的原理是什么?
你刚提到Syncronized的关键字,它在修饰方法和修饰代码块的时候有什么区别?
对于修饰代码块时传一个this和不传有什么区别?
对分布式系统的了解多吗?分布式事务可以如何去实现?
多阶段提交的话卡在中间状态了应该怎么办?
CAP理论了解吧?以两个阶段提交为例,分布式事务做到了CAP里面的哪几个?
无手撕,已经笔试
反问:
问的面试的表现:
因为你本身你是本科生对吧?对本科生整体了解的还行,所以可能有一些深度上的问题,可以适当的去挑那么一个两个方向去深入一下。
实际实习会做什么业务?