【Java面试】,Github爆火的《高并发秒杀顶级教程》

【Java面试】,Github爆火的《高并发秒杀顶级教程》,第1张

【Java面试】,Github爆火的《高并发秒杀顶级教程》
  • HashMap底层原理

  • HashMap扩容机制?

  • HashMap加载因子为什么是0.75?

  • HashMap为什么会发生并发修改异常?并发修改异常解决方案?

  • 为什么jdk8以后HashMap会使用红黑树优化?

  • ConcurrentHashMap底层实现?

  • CAS,ABA,volatile这些是什么?

框架


Spring
  • Spring IOC,Spring AOP?

  • Springbean的生命周期?

  • 如何解决循环依赖?

  • 父子容器?

  • 事务实现原理?

  • 动态代理原理?

  • Spring MVC工作原理?

  • Spring如何实现事务?

Mybatis
  • Mybatis框架优点?
Dubbo
  • 说一下 Dubbo 的工作原理?注册中心挂了可以继续通信吗?

  • Dubbo 支持哪些序列化协议?说一下 Hessian 的数据结构?PB 知道吗?为什么 PB 的效率是最高的?

  • Dubbo 负载均衡策略和集群容错策略都有哪些?动态代理策略呢?

  • 为什么需要服务治理?如何基于 Dubbo 进行服务治理、服务降级、失败重试以及超时重试?

  • 分布式服务接口的幂等性如何设计(比如不能重复扣款)?

  • 分布式服务接口请求的顺序性如何保证?

  • 如何自己设计一个类似 Dubbo 的 RPC 框架?

  • Dubbo特性?

  • Dubbo SPI 和 Java SPI 区别?

  • Dubbo 用到哪些设计模式?

  • 为什么要进行系统拆分?如何进行系统拆分?拆分后不用 Dubbo 可以吗?

Zookeeper
  • Zookeeper底层原理?

  • 选举机制?

  • Zookeeper脑裂问题?

  • Zookeeper假死问题?

  • Zookeeper分布式锁?

  • Zookeeper客户端与集群问题?

  • ZooKeeper典型使用场景?

SpringCould
  • 什么是微服务?

  • 常用组件底层实现?

  • 服务发现组件 Eureka 的主要调用过程?Eureka 和 Zookeeper 都可以提供服务注册与发现的功能,它们有什么区别?

  • 什么是熔断?什么是服务降级?

  • 熔断框架如何做技术选型?选用 Sentinel 还是 Hystrix?

  • 如何限流?在工作中是怎么做的?说一下具体的实现?

  • Spring Boot 和 Spring Cloud,谈谈你对它们的理解?

  • Spring Cloud 和 Dubbo 有哪些区别?

设计模式


设计模式
  • 23种设计模式有哪些?

  • 讲讲你熟悉的几个设计模式底层实现原理?

缓存


Redis

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

  • 单线程模型?

  • Redis 的持久化有哪几种方式?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的?

  • Redis 集群模式的工作原理能说一下么?在集群模式下,Redis 的 key 是如何寻址的?分布式寻址都有哪些算法?了解一致性 hash 算法吗?如何动态增加和删除一个节点?

  • Redis 的并发竞争问题是什么?如何解决这个问题?了解 Redis 事务的 CAS 方案吗?

  • 生产环境中的 Redis 是怎么部署的?

  • 数据类型的应用场景?

  • 数据类型的底层数据结构sds?

  • 一致性hash?

  • 布隆过滤器?

  • 数据同步问题(双删策略)?

  • 击穿、穿透、雪崩、数据一致性?

  • 高并发下的redis分布式锁?

  • 热点数据缓存问题?

  • 哨兵机制,集群架构?

  • 生产环境性能优化?

  • Redis 的过期策略都有哪些?手写一下 LRU 代码实现?

  • 如何保证 Redis 高并发、高可用?Redis 的主从复制原理能介绍一下么?Redis 的哨兵原理能介绍一下么?

  • Redis 主从架构是怎样的?

多线程


多线程
  • 线程池实现原理?

  • 线程池七大核心参数?

  • 线程池如何合理的配置核心线程数?

  • 线程池拒绝策略?

  • JUC并发包?

  • ThreadLocal的使用场景和原理?

  • 线程的生命周期,什么时候会出现僵死进程?

分布式事务


分布式事务
  • CAP理论?

  • base理论?

  • 两阶段提交(2PC)?

  • 三阶段提交(3PC)?

  • 补偿事务(TCC)?

  • 本地消息表(异步确保)?

  • MQ 事务消息?

  • 最大努力通知?

  • TCC 如果出现网络连不通怎么办?XA 的一致性如何保证?

分布式会话
  • 集群部署时的分布式 Session 如何实现?

数据库


数据库
  • 数据库事务隔离级别?

  • 四大属性底层实现原理?

  • 传播行为?

  • 悲观锁、乐观锁、排它锁、共享锁、表级锁、行级锁,死锁检测?

  • 索引数据结构?

  • 主从问题?

  • SQL的整个解析、执行过程原理、SQL行转列?

  • 如何优化SQL?

读写分离


  • 如何实现 MySQL 的读写分离?MySQL 主从复制原理是啥?如何解决 MySQL 主从同步的延时问题?
分库分表
  • 为什么要分库分表(设计高并发系统的时候,数据库层面该如何设计)?用过哪些分库分表中间件?不同的分库分表中间件都有什么优点和缺点?你们具体是如何对数据库如何进行垂直拆分或水平拆分的?

  • 现在有一个未分库分表的系统,未来要分库分表,如何设计才可以让系统从未分库分表动态切换到分库分表上?

  • 如何设计可以动态扩容缩容的分库分表方案?

  • 分库分表之后,id 主键如何处理?

JVM


JVM
  • JVM算法?

  • 垃圾收集器?

  • 垃圾回收机制?

  • JMM和JVM内存模型?

  • JVM调优?

  • 双亲委派机制?

  • 堆溢出,栈溢出,方法区溢出?

  • 你都有哪些手段用来排查内存溢出??

  • 常见的JVM调优方法有哪些?可以具体到调整哪个参数,调成什么值??

  • 各种oom的种类?


  • 公平锁,非公平锁?

  • 可重入锁,递归锁?

  • 自旋锁?

  • 读写锁?

  • 死锁?

  • 分布式锁?

  • AQS实现原理?

  • Synchronized是如何从轻量级锁到重量级锁?

消息中间件


消息中间件
  • 为什么使用消息队列?消息队列有什么优点和缺点?Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么优点和缺点?

  • 如何保证消息队列的高可用?消息丢失?

  • 如何保证消息不被重复消费?(如何保证消息消费的幂等性)

  • 如何保证消息的可靠性传输?(如何处理消息丢失的问题)

  • 如何保证消息的顺序性?

  • 如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?

  • 如果让你写一个消息队列,该如何进行架构设计啊?说一下你的思路。

搜索引擎


搜索引擎
  • ES 的分布式架构原理能说一下么(ES 是如何实现分布式的啊)?

  • ES 写入数据的工作原理是什么啊?ES 查询数据的工作原理是什么啊?底层的 Lucene 介绍一下呗?倒排索引了解吗?

  • ES 在数据量很大的情况下(数十亿级别)如何提高查询效率啊?

  • ES 生产集群的部署架构是什么?每个索引的数据量大概有多少?每个索引大概有多少个分片?

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/5654515.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存