面经详情

Java面试一般,共2轮面试
Q:1、项目了解此处手绘系统架构图,并表明自己负责的哪一块,我们项目中对ES和RocketMQ使用比较多
Q:2、线程池参数(最好是自己手写过线程池)
  • corePoolSize 指定了线程池里的线程数量maximumPoolSize 指定了线程池里的最大线程数量RejectPolicy 拒绝策略,当任务过多时候,如何拒绝任务AbortPolicy 丢弃任务并抛出RejectedExecutionException异常。DiscardPolicy 丢弃任务,但是不抛出异常。如果线程队列已满,则后续提交的任务都会被丢弃,且是静默丢弃CallerRunsPolicy 丢弃队列最前面的任务,然后重新提交被拒绝的任务DiscardOldestPolicy 由调用线程处理该任务keepAliveTime 当线程池线程数量大于corePoolSize时候,多出来的空闲线程,多长时间会被销毁。ThreadFactory 线程工厂,用于创建线程,一般可以用默认的workQueue 任务队列,用于存放提交但是尚未被执行的任务unit 时间单位
Q:3、MQ的顺序消费痛点异常后会阻塞多个队列,分布式全局不太好处理
Q:3、JVM内存模型jdk1.7 永久代jdk1.8 元空间stack内存(栈帧)jvm调优参数,jstack使用
Q:4、并发编程我在项目中CountDown等待所有线程减一结束,然后主线程获取Future中的结果Volatile关键字使用
Q:5、锁synchronize 互斥锁ReentrantLock 可重入锁(自旋锁)
Q:6、MYSQL索引执行查看策略使用explain查看执行策略

相关推荐

132
Java
确定通过感觉靠谱
一面 大概就记得下面这些问题1.自我介绍 2.问项目 3.jwt (项目里用了)4.G1垃圾回收器 5.大对象的定义,那大对象放在哪,为什么不放在新生代 6.GC 相关 7.G1中新生代和老年代的比例是动态的吗 8.你有去看过内存空间的设置吗(具体问题忘了 我当时说的是用 jstack jhat jmap 看什么什么,大概是想问我又没有看过G1垃圾回收器中新生代和老年代的比例是不是确定的吧)9.线程创建的方式 10.线程池创建需要设置什么 11.四大拒绝策略 12.线程池的任务队列 13.工作队列的长度怎么设置(我其实不太会,说了一些我的理解,还说了一些跟其他参数也有关 然后就提到了线程数的设置) 14.线程数怎么设置呢 15.cpu 密集型线程数设置为n+1,为什么要+1,n是什么反问环节:部门是做什么业务的1.自我介绍2.你不是熟悉各种网络协议吗,TCP/UDP/HTTP ,你感觉在什么情况下需要了解这些网络协议?(答的进程通信)那你们的课程包括这些吗,你觉得你了解到什么程度3.TCP和 UDP 的区别?4.这些协议什么情况下解决什么问题?比如说项目里5.这些协议是透明的吗,是要遵循某些规范吗,在你的项目中有用到这些协议吗?(没理解他说的透明是什么意思)6.你之前从来没有接触过 TCP/UDP ,觉得在什么情况下会需要了解这些协议7.那 HTTP 里的 get和 post 的区别呢...查看更多
2023-04-07 发布

进入微信小程序

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

立即前往
看准网携程旅行网携程旅行网面试经验携程旅行网面试经验:Java面试一般,共2轮面试
正在招聘视觉设计实习生200 个岗位