蘑菇街后台开发岗社招面筋
1.自我介绍。
2.你熟悉哪些。答:java 语言,spring 系列框架运用,mysql,hbase,redis,kafka等。
4.说一说mysql两种存储引擎,谈了锁,存储结构,索引等区别。谈一下数据库事务,答了ACID,让我再详细说下这几个概念。追问mvcc,间隙锁。问了一个关于间隙锁的问题,
5.讲一下你对Redis的了解,谈了数据类型,使用场景,跳表,项目中咋用的。追问RDB,AOF区别,谈了RDB 保存一段时间内的数据,子进程完成操作。AOF记录操作命令。追问
6.说说你对java 集合的了解,JUC里面的类,讲了semaphore,cyclicBarrier,countDownLatch的使用场景与区别。追问底层怎么实现,讲了一下AQS,追问再细致点,
7.map 如何解决冲突,1.7,1.8区别,讲讲put源码。
8.tcp,拥塞控制,讲了一下慢开始,拥塞避免(乘法减小,加法增大),追问详细解释一下乘法减小,加法增大。
9.讲一下udp。追问怎么让udp像tcp一样可靠,尴尬地一批说了这个不了解,躺好了。
10.说一下kafka分区设置,怎么持久化的,怎么确定向哪一个分区写消息,为什么快(答零拷贝,只需一次用户态与内核态切换,扯了一点用户态和内核态的东西,追问再详细地说一
下)。
11.kafka 消息幂等性怎么做呢,offset批量提交如何做的。我说手动批量提交的,他说那万一有一个消息没有持久化成功怎么办。
12.讲一哈spring,谈了ioc,aop,jdk动态代理和cglib,反射,spring中用到的设计模式。
13.项目相关,自己讲了一堆项目场景,难点,如何解决。
14.反问环节,蘑菇街月活,和小红书区别,你觉得蘑菇街前景怎么样。