携程面经Java开发岗(社招)面经

携程面经Java开发岗(社招)20210517

一面:

携程总部大楼(上海市长宁区金钟路),汽车票船票组,面试官两位(项目经理+开发人员)

1、项目了解

此处手绘系统架构图,并表明自己负责的哪一块,我们项目中对ES和RocketMQ使用比较多

2、线程池参数(最好是自己手写过线程池)

  • corePoolSize 指定了线程池里的线程数量
  • maximumPoolSize 指定了线程池里的最大线程数量
  • RejectPolicy 拒绝策略,当任务过多时候,如何拒绝任务
    • AbortPolicy 丢弃任务并抛出RejectedExecutionException异常。
    • DiscardPolicy 丢弃任务,但是不抛出异常。如果线程队列已满,则后续提交的任务都会被丢弃,且是静默丢弃
    • CallerRunsPolicy 丢弃队列最前面的任务,然后重新提交被拒绝的任务
    • DiscardOldestPolicy 由调用线程处理该任务
  • keepAliveTime 当线程池线程数量大于corePoolSize时候,多出来的空闲线程,多长时间会被销毁。
  • ThreadFactory 线程工厂,用于创建线程,一般可以用默认的
  • workQueue 任务队列,用于存放提交但是尚未被执行的任务
  • unit 时间单位

3、MQ的顺序消费痛点

异常后会阻塞

多个队列,分布式全局不太好处理

3、JVM内存模型

jdk1.7 永久代
jdk1.8 元空间
stack内存(栈帧)
jvm调优参数,jstack使用

4、并发编程

我在项目中CountDown等待所有线程减一结束,然后主线程获取Future中的结果

Volatile关键字使用

5、锁

synchronize 互斥锁

ReentrantLock 可重入锁(自旋锁)

6、MYSQL索引执行查看策略

使用explain查看执行策略

#面经##社招##携程##Java工程师#
全部评论
1 回复 分享
发布于 2021-05-19 14:34
真是面试造火箭
点赞 回复 分享
发布于 2021-05-18 10:06
老哥,社招一般是几面啊
点赞 回复 分享
发布于 2021-05-18 10:39
是需要现场面吗
点赞 回复 分享
发布于 2021-05-18 10:59
楼主工作几年
点赞 回复 分享
发布于 2021-05-18 12:13
经典的八股文
点赞 回复 分享
发布于 2021-05-18 18:30
最后给offer了吗
点赞 回复 分享
发布于 2021-06-07 14:27
经历了几面?现下面试没有写算法题吗?
点赞 回复 分享
发布于 2021-06-29 20:54
请问一下hr面后多久给回复的呀
点赞 回复 分享
发布于 2021-07-08 20:48
两轮技术+hr是一次性面完的吗?
点赞 回复 分享
发布于 2021-08-24 00:56
老哥后来进携程一共面了几面?
点赞 回复 分享
发布于 2021-10-18 08:03

相关推荐

qz鹿:*** 祝他毕业就失业
点赞 评论 收藏
分享
评论
6
65
分享
牛客网
牛客企业服务