# 科大讯飞
转载请说明
## 大模型二面(9.3)
1. 自我介绍
阿坝啊吧
2. 讲一下你的项目
阿坝啊吧(讲的太细了)被打断了
3. 讲一下企业级的rpc了解的有哪些
不会,我只会我们部门用的
4. 借口改造,项目中遇到的问题如何进行解决
对于http整个拦截流程的了解
5. java中如何实现线程间的同步
共享内存+各种锁,信号量(心好凉),信号量的底层原理是什么(设置一个计数器进行判断)
6. 在java中如何实现一个轻量级的自增自减操作
atomic类来实现
7. java中死锁产生的原因,如何避免死锁
(直接讲操作系统中的了)互斥,循环等待,非抢占,占有并等待,破坏其中的一个条件(具体实际如何进行使用)保证共享资源的一个申请顺序,比如使用future类来进行保持结果,(讲的太少了)
8. 来拷打一下io,实际使用过嘛
没有,会在linux中用,在java中只了解底层,那行(socket中client调用send()函数发送给一个阻塞server,是否能够完整的收到相应包),我觉得可能可以
9. tcp中为什么三次握手,而挥手需要四次
保证不被拦截,确认对方真实接受到消息(可能有问题)
10. mysql中的优化
bufferpool进行设置, sql语句优化,硬件层面进行优化
11. 不讲别的,如何实际进行sql优化
走满索引,索引不能失效,explain语句,看log日志
12. 索引失效的场景有哪些
索引列进行隐式转换,索引列进行运算,不满足最左匹配,使用了范围查询
13. mysql中的锁有哪些
读锁和写锁,锁的力度,表锁,页锁,行锁(是否有更大级别的锁)有!我忘了(是否有列锁)没有
14. redis中的集群
几个节点,三个节点,一个master,两个从节点
15. redis中的数据类型
五种,(set和zset的区别),zset也叫sorted set,字如其名,有序,底层小于128元素压缩列表,或者跳表
16. 讲一下下面的两个项目,第一个优惠券
难点,多线程超卖,redis+lua,(lua的底层是什么),保证只有一个redis扣卖
17. 第二个广告难点
系统重启文件丢失
18. 如何进行学习
看书多一点,effective java,mysql高性能优化,图解java
19. 反问: 部门什么语言多(java)
> (38min)凉了,问的边边角角的,基本都是理解不到位的,good,秋招继续0offer
更新:已挂
#软件开发笔面经#