一面 1.自我介绍 2.Could you introduce your project and what API it provides? 3.栈结构和队列结构的区别 4.算法题:包含min函数的栈 5.怎么实现线程调用同步? 6.synchronized内部轻量级和重量级锁是什么?区别是什么? 7.轻量级轻在哪?更本质的区别是什么? 8.Spring你用过哪些功能? 9.AOP用过吗?spring种aop主要帮我们做了什么? 10.设计一个抢票软件,高并发过来的时候,做哪些设计去应对呢? 11.查库存肯定要查db,缓存一定有延迟是不行的,用什么更直接方式呢?除了缓存有没有别的了? 12.就算做了这么多,还不是能保证那么大流量进来,怎么处理大流量进来呢? 二面 1.self introduction 2.编程语言有偏好吗? 3.项目背景是什么?为啥做这个? 4.整体怎么做的吗? 5.redis用来干嘛,rabbitmq用来干嘛 6.rabbitmq怎么实现消息分发的? 7.rabbitmq的exchange有多种方式你了解吗?你用的哪个? 8.topic的方式是怎么做到的?rabbitmq怎么部署的? 9.做了多久? 10.上传图片和富文本怎么做的? 11.OAuth登陆怎么做的? 12.登陆完之后怎么返回原始界面?怎么做? 13.多对多的表之间怎么设计? 14.设计模式,单例模式,双重校验,每一层校验是什么作用? 三面 1.有实习经历或者项目经历吗? 2.golang和.Net你希望学习哪个呢? 3.系统的性能调优知道怎么做吗? 4.场景需求:特斯拉在线网站车型预览并且选择喜欢的车型下定金购买,生成订单,要考虑高并发问题和系统的稳定性,怎么搭这个架构? 5.实习有转正的意向吗? 6.介绍完了整个业务,问更倾向于做什么? 7.Could you please descirble the benefit of microservice architect? 8.Do you know the difference between Kafka and rabbitMQ? 感觉到特斯拉业务部门全是高并发的东西,而且面试确实比较International。 进去要转golang和.net