JAVA基础
JAVA异常分类及处理异常分类异常的处理方式Throw和throws的区别JAVA反射动态语言反射机制概念 (运行状态中知道类所有的属性和方法)Java反射API反射使用步骤(获取Class对象、调用对象方法)获取Class对象的3种方法创建对象的两种方法JAVA注解JAVA内部类JAVA泛型JAVA序列化(创建可复用的Java对象)JAVA复制JAVA集合
接口继承关系和实现ListArrayList(数组)Vector(数组实现、线程同步)LinkList(链表)SetHashSet(Hash表)TreeSet(二叉树)LinkHashSet(HashSet+LinkedHashMap)MapHashMap(数组+链表+红黑树)JAVA7实现JAVA8实现ConcurrentHashMapSegment段线程安全(Segment 继承 ReentrantLock 加锁)并行度(默认16)HashTable(线程安全)TreeMap(可排序)LinkHashMap(记录插入顺序)JAVA多线程并发
JAVA并发知识库JAVA线程实现/创建方式4种线程池线程生命周期(状态)终止线程4种方式sleep与wait 区别start与run区别JAVA后台线程JAVA锁线程基本方法线程上下文切换同步锁与死锁线程池原理JAVA阻塞队列原理CyclicBarrier、CountDownLatch、Semaphore的用法volatile关键字的作用(变量可见性、禁止重排序)如何在两个线程之间共享数据ThreadLocal作用(线程本地存储)synchronized和ReentrantLock的区别ConcurrentHashMap并发Java中用到的线程调度进程调度算法什么是CAS(比较并交换-乐观锁机制-锁自旋)什么是 AQS(抽象的队列同步器)JVM
线程JVM内存区域JVM运行时内存垃圾回收与算法JAVA 四种引用类型GC分代收集算法 VS 分区收集算法GC垃圾收集器JAVA IO/NIOJVM 类加载机制Spring 原理
Spring 特点轻量级控制反转面向切面容器框架集合Spring 核心组件Spring 常用模块Spring 主要包Spring 常用注解Spring IOC原理Spring APO原理Spring MVC原理Spring Boot原理JPA原理Mybatis缓存Tomcat架构微服务
服务注册发现客户端注册(zookeeper)第三方注册(独立的服务Registrar)客户端发现服务端发现ConsulEurekaSmartStackEtcdAPI 网关请求转发响应合并协议转换数据转换安全认证配置中心zookeeper配置中心配置中心数据分类事件调度(kafka)服务跟踪(starter-sleuth)服务熔断(Hystrix)Hystrix断路器机制API管理Netty 与RPC
Netty 原理Netty 高性能多路复用通讯方式异步通讯NIO零拷贝(DIRECT BUFFERS使用堆外直接内存)内存池(基于内存池的缓冲区重用机制)高效的Reactor线程模型无锁设计、线程绑定高性能的序列化框架Netty RPC实现关键技术核心流程消息编解码通讯过程RMI实现方式实现步骤Protoclol BufferThrift分布式缓存
缓存雪崩缓存穿透缓存预热缓存更新缓存降级网络
网络7层架构TCP/IP原理网络访问层(Network Access Layer)网络层(Internet Layer)传输层(Tramsport Layer-TCP/UDP)应用层(Application Layer)TCP三次握手/四次挥手HTTP原理传输流程HTTP状态HTTPSCDN 原理分发服务系统负载均衡系统管理系统日志
Slf4jLog4jLogBackLogback优点ELKZookeeper
Zookeeper概念Zookeeper角色LeaderFollowerObserverZAB协议事务编号 Zxid(事务请求计数器+ epoch)epochZab协议有两种模式-恢复模式(选主)、广播模式(同步)ZAB协议4阶段Leader election(选举阶段-选出准Leader)ZAB协议JAVA实现(FLE-发现阶段和同步合并为 Recovery Phase(恢复阶段))投票机制Zookeeper工作原理(原子广播)Znode有四种形式的目录节点Kafka
Kafka概念Kafka数据存储设计partition的数据文件(offset,MessageSize,data)数据文件分段segment(顺序读写、分段命令、二分查找)数据文件索引(分段索引、稀疏存储)生产者设计负载均衡(partition会均衡分布到不同broker上)批量发送压缩(GZIP或Snappy)消费者设计Consumer GroupRabbitMQ
RabbitMQ概念RabbitMQ架构Exchange 类型Hbase
Hbase概念列式存储Hbase核心概念Hbase核心架构Hbase的写逻辑HBase vs CassandraMongoDBMongoDB概念MongoDB特点Cassandra
Cassandra概念数据模型Cassandra一致Hash和虚拟节点Gossip协议数据复制数据写请求和协调者数据读请求和后台修复数据存储(CommitLog、MemTable、SSTable)二级索引(对要索引的value摘要,生成RowKey)数据读写设计模式
设计原则工厂方法模式抽象工厂模式单例模式建造者模式原型模式适配器模式装饰器模式代理模式外观模式桥接模式组合模式享元模式策略模式模板方法模式观察者模式迭代的模式责任链模式命令模式备忘录模式负载均衡
四层负载均衡 vs 七层负载均衡负载均衡算法/策略LVSKeepaliveNginx反向代理负载均衡HAProxy数据库
存储引擎索引数据库三范式数据库是事务存储过程(特定功能的SQL 语句集)触发器(一段能自动执行的程序)数据库并发策略数据库锁基于Redis分布式锁分区分表两阶段提交协议三阶段提交协议柔性事务CAP一致性算法
PaxosZabRaftNWRGossip一致性Hash一致性Hash特性一致性Hash原理JAVA算法
二分查找冒泡排序算法插入排序算法快速排序算法希尔排序算法归并排序算法桶排序算法基数排序算法剪枝算法回溯算法最短路径算法最大的数组算法最长公共子序算法最小生成树算法数据结构
栈(stack)队列(queue)链表(Link)散列表(Hash Table)排序二叉树红黑树B-TREE位图加密算法
AESRSACRCMD5Hadoop
Hadoop概念HDFSClientNameNodeSecondary NameNodeDataNodeMapReduceJobTrackerTaskTrackerTaskReduce Task 执行过程Hadoop MapReduce 作业的生命周期作业提交与初始化任务调度与监控。任务运行环境准备任务执行作业完成Spark
Spark概念核心架构核心组件SPARK编程模型SPARK计算模型SPARK运行流程SPARK RDD流程SPARK RDDStorm
Storm概念集群架构Nimbus(master-代码分发给Supervisor)Supervisor(slave-管理Worker进程的启动和终止)Worker(具体处理组件逻辑的进程)TaskZooKeeper编程模型(spout->tuple->bolt)opology运行Storm Streaming GroupingResourceManagerNodeManagerApplicationMasterYARN运行流程机器学习
决策树随机森林算法逻辑回归SVM朴素贝叶斯K 最近邻算法K 均值算法Adaboost 算法神经网络马尔可夫云计算
SaaSPaaSIaaSDockerOpenstackNamespaces进程(CLONE_NEWPID 实现的进程隔离)Libnetwork与网络隔离资源隔离与CGroups镜像与UnionFS存储驱动面试结束复盘查漏补缺
每次面试都是检验自己知识与技术实力的一次机会,面试结束后建议大家及时总结复盘,查漏补缺,然后有针对性地进行学习,既能提高下一场面试的成功概率,还能增加自己的技术知识栈储备,可谓是一举两得。
以下最新总结的阿里P6资深Java必考题范围和答案,包含最全MySQL、Redis、Java并发编程等等面试题和答案,用于参考~
资料免费领取方式:点赞关注后,戳这里免费领取
重要的事说三遍,关注+关注+关注!
更多笔记分享
资源隔离与CGroups镜像与UnionFS存储驱动
面试结束复盘查漏补缺
每次面试都是检验自己知识与技术实力的一次机会,面试结束后建议大家及时总结复盘,查漏补缺,然后有针对性地进行学习,既能提高下一场面试的成功概率,还能增加自己的技术知识栈储备,可谓是一举两得。
以下最新总结的阿里P6资深Java必考题范围和答案,包含最全MySQL、Redis、Java并发编程等等面试题和答案,用于参考~
资料免费领取方式:点赞关注后,戳这里免费领取
重要的事说三遍,关注+关注+关注!
[外链图片转存中…(img-TnKK7USs-1626250954741)]
[外链图片转存中…(img-AFiw7rJ4-1626250954744)]
更多笔记分享
如果觉得《Java岗面试12家大厂成功跳槽 含泪整理面经》对你有帮助,请点赞、收藏,并留下你的观点哦!