---------实习项目----------
- 介绍下最近这段实习负责了什么,问了我些实习项目的东西
- 你觉得用DDD有什么优势和劣势(优势:我说了仓储层和基础设施层实现无缝切换ORM和DB,适配器层做外部接口和内部接口的适配。不给说了,让我说缺点:每层DTO都要转换,可能比较耗性能,可能对开发水平要求比较高,需要学习成本)
- mq解决了怎样的需求,遇到什么困难,怎么解决的
- 聊了下第一段实习
- 关于大批量导出你们做了哪些优化
- ElasticSearch知道是吧,说下对他的理解(直接慌了,作死简历写es,问我es常规八股估计都答不上来。我就转移换题,讲了之前摸鱼看的elastic中国开发者大会,讲的几个es在大厂的实践什么做mysql二级索引和es17之后可以加入人脸识别算法实现千万级人脸快速匹配,他没继续问了)
- 青训营抖音项目中的点赞用Redis做到了哪些小设计
- 如果redis挂了怎么办,你们有没有什么补救措施
- lua脚本是什么东西
----------基础----------
- java的基础数据类型
- char占多少字节,多少位
- 我现在new一个String构造器传123,这个操作会产生有几个对象?
- 线程有哪些状态
- 抽象类和接口有什么区别
- ArrayList和Hashmap的扩容原理是怎么样的
- HashMap是怎么样扩容的,为什么是2的幂次方
- 你觉得单核cpu有必要多线程吗(我说超线程单核也可多线程,但是我说感觉没有必要单核多线程,因为可能会cpu上下文来回切换会消耗性能,他说我理解的不够到位,让我回去重新看一下,他说单核多线程在用的好的情况也是能提升性能的,评论区大佬们讨论一下)
- 什么是线程上下文切换
- reentrantLock知道吗(刚看完源码,我开始狠狠吟唱AQS了呀,打断施法了不给机会)
- Synchronized和threadLocal有什么区别(完全不是一个维度的东西,搞不懂为什么问这个)
- synchronized是怎么保证线程安全的,是怎么上锁的
- 这个锁标志在对象头里占多少位(不会呀)
- 你觉得synchronized一定能保证线程安全吗(我说可能指令重排导致读的数据不一定安全,有些情况可能要加volatile)
- 你知道JMM吗,讲一下
- 讲下volatile的原理
- Spring的beanFactory和factoryBean有什么区别,我不知道,你能给我讲一下吗(为什么这么搞笑的提问方式哈哈哈)
- 前端发请求到SpringMVC的执行流程
- 框架你对哪个最熟悉
- Spring的aop原理
- websocket有没有了解,在实习或项目中有没有用到这方面的
- 有没有学过netty(我说还没,这个端午正准备学了,他说好没关系)
- 已经毕业了吗(我说我大三.....)
----------反问----------
- 一共几面(3面)
- 有转正吗
- 公司什么技术栈
- 你觉得我有什么要提升的?(多线程理解的还不够到位,框架也要加强一下,不过大三能学到这样已经很好了开心捏)
总结:面试管很好,又是上班偷偷跑出来面的,风很大,他就听不到提醒我听不清楚了,也没生气什么。感觉问的不是很深,没有我想的那么夸张,我以为很久没看八股了能被狠狠拷打,昨天背了一天mysql和redis的八股结果没怎么问到,好在基本都答上来了,希望能二面
#软件开发2023笔面经##java实习面经##实习面经##面经##java面经#