面试题

高级、资深工程师面试题

java
  • 集合类用过哪些?

  • hashmap 1.8比1.7有哪些变化?
    红黑树的查询时间复杂度?
    为什么链表长度>8时转成红黑树

  • treeMap和hashmap有哪些区别?

  • Collections.sort() 用的那种排序算法,时间复杂度
    采用了2种排序算法 -- 基本类型数据使用快速排序法,对象数组使用归并排序。O(log n)

  • 场景:比如有一个服务,昨天上了一次线,今天从服务监控上看,这个服务所有的接口的平均响应耗时增加了不少,让你来排查这个问题,你会从哪几个方面考虑?
    QPS增高?锁?线程池配置的不合理?full gc

  • 线程池
    线程池工作原理,参数含义

  • jvm
    jdk1.8 和1.7相比 jvm内存模型有什么区别,这个升级有什么用
    描述JVM中一次完整的GC流程,对象如何从创建到老年代,被回收的
    线上发生OOM 该如何排查?
    cpu负载非常高,如何排查?

  • 多线程
    场景:有5个子线程,我想让5个子线程都执行完之后,主线程再往下执行。怎么实现?
    CyclicBarrir或countDownLatch原理
    volatile 的两个cpu语义,是如何实现内存可见性的(JMM内存模型)
    aqs的实现原理,
    cas的缺陷

redis
  • redis的数据结构用过哪些,及其底层存储的数据结构
    场景:redis底层是用c语音写的,‘\0’ 在c语音字符串中会被认为是字符串的结束。如果redis字符串存储,‘123\0123’,那么get出来是什么? 为什么?
    简述hash表的扩容过程
    跳跃表的时间复杂度
  • 候选人redis采用的架构模式是哪种,存在什么缺点
  • 主从架构下的问题,集群模式的问题
    场景:主从模式下,set key设置过期时间,比如10分钟,过了10分钟之后,get key,还能把set的值拿出来,问题可能出在哪?
  • 过期机制了解几种,讲一下
  • redis是单线程的,为什么单线程还这么快呢?
  • 如何防止缓存雪崩

mysql数据库

场景:线上数据库出现慢查询,如何排查优化,
如何优化索引
有哪几种索引?
聚簇索引结构
非聚簇索引和聚簇索引结构有何不同
mysql事务和隔离级别
隔离级别有哪几个,各自存在的问题
事务是如何实现的?MVCC?

spring

aop的例子,设计实现原理。动态代理
spring中还使用了哪些设计模式?
自己有没有写过切面

rocketmq

  • rocketmq如何保证性能的?
  • 和kafka的区别?
  • 场景:用户对一个商品下单,然后支付完成。下单、支付成功各自发了mq,消费者消费了这两个mq,但这俩mq显然是有先后顺序的,如何:
    如何保证不重复消费?
    如何保证顺序消费?

kafka

kafka 为什么快
kafka怎么实现顺序消费
Kafka消息是采用Pull模式,还是Push模式?

微服务

  • dubbo 和 spring cloud用过哪个?讲一下注册发现的过程,zk(cp模型)和eureka(ap模型)的区别,从cap模型讲,各属于什么模型,哪个更适合做注册中心?
  • 分布式下的事务,数据一致性。有哪种分布式事务框架
  • 怎么实现分布式锁,有几种方式,优缺点
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 包含的重点内容:JAVA基础JVM 知识开源框架知识操作系统多线程TCP 与 HTTP架构设计与分布式算法数据库知...
    消失er阅读 4,356评论 1 10
  • Java SE 基础: 封装、继承、多态 封装: 概念:就是把对象的属性和操作(或服务)结合为一个独立的整体,并尽...
    Jayden_Cao阅读 2,134评论 0 8
  • Java面试题 Java 集合源码分析 https://www.cnblogs.com/joemsu/p/7667...
    xiaogmail阅读 791评论 0 1
  • 相关概念 面向对象的三个特征 封装,继承,多态.这个应该是人人皆知.有时候也会加上抽象. 多态的好处 允许不同类对...
    东经315度阅读 1,980评论 0 8
  • 一、Java基础 1. String类为什么是final的。 final修饰的类不能被继承,即它不能拥有自己的子类...
    vaneL阅读 922评论 0 3