阿里部分面试题汇总,对想进阿里的同学非常实用

一、JVM与性能优化

  • 描述一下 JVM 加载 Class 文件的原理机制?
  • 什么是类加载器?
  • 类加载器有哪些?
  • 什么是tomcat类加载机制?
  • 类加载器双亲委派模型机制?
  • Java 内存分配?
  • Java 堆的结构是什么样子的?
  • 简述各个版本内存区域的变化?
  • 说说各个区域的作用?
  • Java 中会存在内存泄漏吗,简述一下?
  • Java 类加载过程?
  • 什么是GC? 为什么要有 GC?
  • 简述一下Java 垃圾回收机制?
  • 如何判断一个对象是否存活?
  • 垃圾回收的优点和原理,并考虑 2 种回收机制?基本原理是什么?
  • 深拷贝和浅拷贝?
  • 什么是分布式垃圾回收(DGC)?它是如何工作的?
  • 在 Java 中,对象什么时候可以被垃圾回收?
  • 简述Minor GC 和 Major GC?
  • Java 中垃圾收集的方法有哪些?
  • 讲讲你理解的性能评价及测试指标?
  • 常用的性能优化方式有哪些?
  • 说说分布式缓存和一致性哈希?
  • 什么是GC调优?

二、Redis

  • redis数据结构有哪些?
  • Redis缓存穿透,缓存雪崩?
  • 如何使用Redis来实现分布式锁?
  • Redis的并发竞争问题如何解决?
  • Redis持久化的几种方式,优缺点是什么,怎么实现的?
  • Redis的缓存失效策略?
  • Redis集群,高可用,原理?
  • Redis缓存分片?
  • Redis的数据淘汰策略?
  • redis队列应用场景?
  • 分布式使用场景(储存session)?

三、网络编程

  • TCP建立连接和断开连接的过程?
  • HTTP协议的交互流程• HTTP和HTTPS的差异,SSL的交互流程?
  • TCP的滑动窗口协议有什么用?
  • HTTP协议都有哪些方法?
  • Socket交互的基本流程?
  • 讲讲tcp协议(建连过程,慢启动,滑动窗口,七层模型)?
  • webservice协议(wsdl/soap格式,与restt办议的区别)?
  • 说说Netty线程模型,什么是零拷贝?
  • TCP三次握手、四次挥手?
  • DNS解析过程?
  • TCP如何保证数据的可靠传输的?

四、设计模式与重构

  • 说说几个常见的设计模式(23种设计模式)?
  • 设计一个工厂的包的时候会遵循哪些原则?
  • 列举一个使用了 Visitor/ Decorator模式的开源项目/库?
  • 如何实现一个单例?
  • 代理模式(动态代理)?
  • 单例模式(懒汉模式,恶汉模式,并发初始化如何解决, volatile与lock的使用)?
  • JDK源码里面都有些什么让你印象深刻的设计模式使用,举例看看?

五、分布式

  • 什么是CAP定理?
  • 说说CAP理论和BASE理论?
  • 什么是最终一致性?最终一致性实现方式?
  • 什么是一致性Hash?
  • 讲讲分布式事务?
  • 如何实现分布式锁?
  • 如何实现分布式 Session?
  • 如何保证消息的一致性?
  • 负载均衡的理解?
  • 正向代理和反向代理?
  • CDN实现原理?
  • 怎么提升系统的QPS和吞吐?
  • Dubbo的底层实现原理和机制?
  • 描述一个服务从发布到被消费的详细过程?
  • 分布式系统怎么做服务治理?
  • 消息中间件如何解决消息丢失问题?
  • Dubbo的服务请求失败怎么处理?
  • 对分布式事务的理解?
  • 如何实现负载均衡,有哪些算法可以实现?
  • Zookeeper的用途,选举的原理是什么?
  • 讲讲数据的垂直拆分水平拆分?
  • zookeeper原理和适用场景?
  • zookeeper watch机制?
  • redis/zk节点宕机如何处理?
  • 分布式集群下如何做到唯一序列号?
  • 用过哪些MQ,怎么用的,和其他mq比较有什么优缺点,MQ的连接是线程安全的吗?
  • MQ系统的数据如何保证不丢失?
  • 列举出能想到的数据库分库分表策略?

 

需要相关资料的小伙伴可以私信【大厂】即可领取 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值