记录了暑期实习中部分面试的面经,有些公司可能有部分没有记录腾讯:一面(一个小时五分钟左右)java相关(部门不用java,但是面试官说他刚好会,就问下,而我刚好没看java哈哈)对象比较,equalserror和exception,exception都可以被捕获嘛,有什么常见的exceptionjava线程同步方式gc项目实习相关幂等组件实现,顺带说了下可靠消息通知事务问了句项目里面的缓存数据库一致性问下认为实习项目的价值,给我建议说可以更宏观的看待手撕一道滑动窗口的,秒撕后加了一点难度,也秒撕接雨水,单调栈秒撕二面(四十八钟左右)实习相关介绍了下部门的业务,个人开发的规则介绍了下一个工具的实现,顺带说了下分布式事务rpc调用对象的组装(protobuf,但是我讲的是应用层面的,没有回答到面试官想听的点上)八股虚拟内存java gc进程通信方式常见的设计模式,讲一下工厂模式其他会不会其他的语言想做业务还是基架怎么学习的未来的规划对ai的了解没有手撕,问为啥没有,他说上一轮不是有吗,他能看到(感觉是一个比较传统特别的面试官,很多问题都不是跟着题库走)三面实习相关(不是细节,宏观角度问项目的价值,优缺点,怎么保证完备化)讲一下自己的优点最近发生最大的冲突(我讲了是实习中和业务放沟通问题,他引申问了下,是不是可以引入第三方仲裁)最近最自豪的事情算法:读取一个英文文档,找到行尾出现次数最多的一个或多个字符串(题目比较奇怪,而且我忘记了文件读取api,幸好不要求编译他也没有往优化的方向问)毕业几年内的规划b站:一面(五十多分钟)八股object类的方法 equals和==区别string适合+拼接吗hashmap结构,set的过程单核cpu可以处理多任务吗线程死锁violatile原理,是原子性的嘛乐观锁和悲观锁,乐观锁常见实现synchronized线程池常见参数对象创建的过程,类加载到初始化gchttps和http区别聚簇索引和非聚簇索引最左匹配原则redis用处缓存三剑客spring常用注解手撕:回环链表二面(55分钟左右)项目拷打几点项目实现,对比延时消息redisson分布式锁手撕:lru蚂蚁:一面(电话面,65分钟左右)拷打项目穿插场景题分库分表如果不是分片键应该怎么范围查询(答的很不好,应该可以用路由表或者复合分片键)数据分区有了解吗(只说了对冷热数据库有了解,但是怎么实现共同查询不太了解)怎么保证mq的消费(分布式事务,个人答的用的是本地消息表)保证消费幂等(redis维护状态字段,分布式锁修改状态)下单时一些实际场景出现的情况手撕(口述):多线程单双数打印synchronized和reetranlock聚合索引的失效,b+树结构二面三十多分钟,没手撕,有点像kpi也有点像走流程项目中支付相关内容实现项目中高并发场景的方案实习中的难点对ai应用在金融、支付上的一些场景会英语和粤语嘛实习时间阿里云:一面(约50分钟,压力面,好多不会的,所以有些问题不记得了) 上来手撕 不用锁完成双线程交替打印(volatile加原子变量,但是他说有问题让我下去自己看看)八股(全部是非常规八股,很多没看到过的)redission原理,怎么实现的释放通知(publish,不会)还有什么可以实现分布式锁(想着mq,他说用zookeeper)为什么使用zookeeper(我一直说注册中心的作用还有服务保护,他说这些只是功能,没答道点上)接着问为什么不用redis也能实现上面功能,为什么不用而下做注册中心(提示后说zk是保证cp的,redis是保证ap的)redis pipeline,多条指令发送过去后中间会有其他指令插入吗;是谁负责把响应打包起来的(记错了,以为redis负责发送结果的线程打包的,他说redis内部没有pipeline概念,只知道来了很多指令,是客户端打包起来的响应)redis怎么设置过期时间(直接说px);过期淘汰策略(难得有正常八股)还有个关于rocketmq我都没听懂,从来没有见过的概念,直接说没听过了还有一些不记得了二面50分左右,很长时间是在闲聊,收获良多,面试官很和蔼,爱了,和上一个面试官两个极端项目中binlog使用,讲述了一下我数据库缓存一致性方案;此外,问我用redission分布式锁时使用设定过期时间和等待超时时间相关问题进程通信,操作系统底层实现互斥锁tcp粘包拆包遇到的最困难的事情反问:为什么不问八股,他说应届生本来也都是背的,理解不深入,没有这个必要业务,数据库底层,c、cpp、go京东:一面为什么去美团实习(后面说考察我的规划性)java exception项目中联合索引,还有两颗b+树项目和实习中怎么设计数据库表项目中写的set环境,还有相关的一个通知型事务怎么学习的遇到的最大困难,ai的了解反问:为什么时间这么短,他说主要是考察潜力,不想问常规的八股问题,然后夸了我一顿,说我什么规划性强,学习能力不错,然后什么是实实在在做了事情,不是包装的等等我说想下一轮再问业务,他说下一轮可能是人事了,所以给我讲了五分钟的业务二面hrbp面三面实习项目相关内容字节:一面45分钟左右实习相关为什么分页查询,除了分页还有什么可以防止oom怎么做的线程的安排(completablefuture)题目:双线程交替打印(简单讲了下synchronized)+sql(面试完之后发现做错了呜呜)怎么使用的联合索引,索引怎么查询的;给了一条sql分析应该加上什么索引,查询的过程;如果索引太多会怎么样(从联合索引字段多和所有索引多入手)手撕:返回最长公共子字符串二面一个小时左右详细讲了实习的一条并且引申问了个场景进程线程区别、什么场景用多线程,什么场景用多线程堆和栈的区别,为什么一定要区分堆和栈cpu怎么调度任务(讲了几个调度策略)tcp四次挥手,为什么一定是四次,可以三次吗;timewait状态,为什么两个msl保证包消失如果服务端重新发送的第三次握手又丢失了怎么办char、varcharmysql的limit(我顺带提及了分页优化,然后他问如果数据量是1kw的话还用分页优化合理吗,为什么这时候用limit会慢)手撕:15. 三数之和三面没记录