面经详情

当前内容设置为仅微信小程序内可见

前往微信小程序

相关推荐

匿名用户
Java
未通过未通过
# 企鹅杏仁 ### 一面: 电话 * 介绍下HashMap、为什么要用红黑树而不是平衡二叉树 ? * HTTP3有了解过么? * TCP/IP 相关, 如果一个流没有关闭,会产生什么后果 * 为什么会有并发问题, 单核CPU会不会有并发问题,java 加锁关键字, synchronized 是什么锁 * 介绍下Spring中的设计模式、怎么实现声明式事务、什么情况下Spring的事务管理会失效? * RabbitMQ架构、从消息发出到消费者ack * 说下分布式锁, Redis 版实现 ### 二面: 现场(笔试) * 第一题: 简单的SQL题一道, 考察分组+时间函数+聚合统计函数 * 第二题: 给SQL加索引。 * 第三题: 基础算法, 有一个`List ` , 里面保存的是顺序打乱但是元素可能重复的字母 (如aaab,aabc,abcd,cbba), 如何根据元素来分组。 * 第四题: 给了一个方法, 里面几重if...else , 让你优化。 考察设计模式功底。 ### 二面: 现场(面试) 面试官上来先让你选写的上家公司的使用到的技术栈, 让你点几个能问的深的, 只会调API的就不问了,然后他一个个问。 **大概问了这些:** * 单例和多例, 分别有什么优点和缺点。 如果SpringMVC的Controller是多例的话会怎么样? * MyBatis怎么解决SQL注入? * Dubbo+ZK怎么保证服务调用重试时的幂等性? * 分布式环境下 Dubbo+ZK 的架构。 如果有新的provider连上ZK, consumer在何时才能够使用他? * Dubbo+ZK 如果provider挂了, 会影响到consumer么? * RabbitMQ 消息消费怎么保证幂等性? * RabbitMQ 要如何保证发送端的消息肯定能够发送到MQ Broker? * Redis 的分布式锁怎么实现的? 哪些场景有用到? * 线程池参数, 源码级别的核心线程初始方案 * MySQL 哈希索引和Btree的区别 * 说下 MySQL 间隙锁...查看更多
2 年前 发布
9391
Java
确定通过感觉靠谱
一面 1.自我介绍、科研介绍、项目介绍、实习介绍2.实习内容涉及了redis,问了redis的数据类型,sortedset一般用于什么情况 排行榜取topK 3.redis为什么不可靠,怎么变得可靠  1)异步主从复制,没复制完master宕机  2)脑裂,master脱离连接范围,哨兵选举新的mastere,client没来得及切换继续发送到旧master,数据丢失 这里面试官还提示了并发场景,但是我只知道redis单线程上面两种情况数据丢失,有大佬解答一下吗4.实习内容涉及了MQ,问了几种MQ的对比5.事务是干什么的,事务特性,事务隔离级别,mysql默认级别,为什么是RR  1)作用:保证数据的一致性和完整性  2)特性:ACID(原子性,隔离性,持久性,一致性) 3)隔离级别:读取未提交,读取已提交,可重复读,可串行化  4)默认级别:可重复读  5)原因:当时答了在一致性和性能之间做平衡,但是后来详细看到如下解释: 低版本的MYSQL,使用RC+STATEMENT组合会导致主从不一致(1.5之前binlog只有statement格式,按照commit时间顺序保存,先插入后删除,master时先删除后插入), 但在RR级别下binlog任何格式都不会造成主从不一致,现在已经修复了问题,但沿用了老的设定 binlog不同模式: statement:每修改一条会修改数据的sql都记录在binlog 一致性问题  Row:不记录sql语句上下文相关信息,仅保存哪条记录被修改 一条update执行多次,多条数据  Mixedlevel:是以上两种level的混合使用,一般的语句修改使用statment格式保存binlog,如一些函数,statement无法完成主从复制的操作,则采用row格式保存binlog6.CAS原理,如果比较不相等会怎么样,自旋锁为什么要不断重试,CAS性能什么时候比锁差  1)原理: CAS是比较值,如果值相等则变换,不相等只返回当前值,多线程下会自旋竞争  2)这个我也不大会,感觉是因为用到CAS自旋,默认是乐观情况,几乎不存在竞争,不断重试等待保持者释放锁就立刻竞争? 3)单核CPU?7. linux命令,看进程id,端口状态  1) 进程id:ps -ef  2) 具体端口状态: netstat -anp |grep 端口号8. 数据库,mysql索引,插入数据索引维护,最坏会发生什么  1) B+树 blabla  2)整个树进行一个平衡的调整9.四次挥手,close_wait和time_wait是什么,如果出现大量time_wait会是什么原因 1)四次挥手 blabla 2)close_wait 服务端还有消息没法送完时候 3) time_wait 客户端 最后的ACK发送完等待2MSL时间,如果丢失重发时间2MSL,上一次链接的消息完全消失  4) 出现大量time_wait: 在 高并发短连接 的TCP服务器上,当服务器处理完请求后立刻主动正常关闭连接。这个场景下会出现大量socket处于TIME_WAIT状态。如果客户端的并发量持续很高,此时部分客户端就会显示连接不上。 具体一点,短连接表示“业务处理+传输数据的时间 远远小于 TIMEWAIT超时的时间”的连接。比如取一个web页面,1秒钟的http短连接处理完业务,在关闭连接之后,这个业务用过的端口会停留在TIMEWAIT状态几分钟,而这几分钟,其他HTTP请求来临的时候是无法占用此端口的。这样大量端口占用造成严重的资源浪费 至于如何处理的话,” 打开系统的TIMEWAIT重用和快速回收“ 10.反问...查看更多
2 年前 发布

进入微信小程序

前往微信小程序,查看更多结果

立即前往
看准网大亚湾鸿通电子大亚湾鸿通电子面试经验大亚湾鸿通电子面试经验:面试难度较容易,无笔试
正在招聘鸿通电子招聘车工11 个岗位