写点什么

“闭关修炼”30 天,吃透这本“Java 核心知识”,跳槽面试不心慌!

发布于: 18 小时前

“闭关修炼”的你是不是已经在为“金九银十”跳槽季发愁呢?若是能将小编今天说的这富含 30 个章节的 Java 核心面试知识整理(包括:JVM,JAVA 集合,JAVA 多线程并发,JAVA 基础,Spring 原理,微服务,Netty 与 RPC,网络,日志,Zookeeper,Kafka,RabbitMQ,Hbase,MongoDB,Cassandra,设计模式,负载均衡,数据库,一致性哈希,JAVA 算法,数据结构,加密算法,分布式缓存,Hadoop,Spark,Storm,YARN,机器学习,云计算),好好吃透消化,让你面试跳槽不再心慌!

注意: “面试跳槽宝典:Java 核心知识整理” (地址)

02 JVM

  1. 线程

  2. JVM 内存区域

  3. JVM 运行时内存

  4. 垃圾回收与算法

  5. JAVA 四种引用类型

  6. GC 分代收集算法 VS 分区收集算法

  7. GC 垃圾收集器

  8. JAVA IO/NIO

  9. JVM 类加载器


03 JAVA 集合

  1. 接口继承关系和实现

  2. LIST

  3. SET

  4. MAP


04 JAVA 多线程并发

  1. JAVA 并发知识库

  2. JAVA 线程实现/创建方式

  3. 4 种线程池

  4. 线程生命周期(状态)

  5. 终止线程 4 种方式

  6. sleep 与 wait 区别

  7. start 与 run 区别

  8. JAVA 后台线程

  9. JAVA 锁

  10. 线程基本方法

  11. 线程上下文切换

  12. 同步锁与死锁

  13. 线程池原理

  14. JAVA 阻塞队列原理

  15. CyclicBarrier、CountDownLatch、Semaphore 的方法

  16. voliate 关键字的作用(变量可见性、禁止重排序)

  17. 如何在两个线程之间共享数据

  18. Threadlocal 作用(线程本地存储)

  19. synchronized 和 ReentrantLock 的区别

  20. ConcurrentHashMap 并发

  21. Java 中用到的线程调度

  22. 进程调度算法

  23. 什么是 CAS(比较并交换-乐观锁机制-锁自旋)

  24. 什么是 AQS(抽象的队列同步器)


05 JAVA 基础

  1. JAVA 异常分类及处理

  2. JAVA 反射

  3. JAVA 注解

  4. JAVA 内部类

  5. JAVA 泛型

  6. JAVA 序列化(创建可复用的 Java 对象)

  7. JAVA 复制


06 Spring 原理

它是一个全面的、企业应用开发一站式的解决方案,贯穿表现层、业务层、持久层。但是 Spring 仍然可以和其他的框架无缝整合

  1. Spring 特点

  2. Spring 核心组件

  3. Spring 常用模块

  4. Spring 主要包

  5. Spring 常用注解

  6. Spring 第三方结合

  7. Spring IOC 原理

  8. Spring APO 原理

  9. Spring MVC 原理

  10. Spring Boot 原理

  11. JPA 原理

  12. Mybatis 缓存

  13. Tomcat 架构


07 微服务

  1. 服务注册发现

  2. API 网关

  3. 配置中心

  4. 事件调度(kafka)

  5. 服务跟踪(starter-sleuth)

  6. 服务熔断(Hystrix)

  7. API 管理


08 Netty 与 RPC

Netty 是一个高性能、异步事件驱动的 NIO 框架,基于 JAVA NIO 提供的 API 实现。它提供了对 TCP、UDP 和文件传输的支持,作为一个异步 NIO 框架,Netty 的所有 IO 操作都是异步非阻塞的,通过 Future-Listener 机制,用户可以方便的主动获取或者通过通知机制获得 IO 操作结果。

  1. Netty 原理

  2. Netty 高性能

  3. Netty RPC 实现

  4. RMI 实现方式

  5. Protocol Buffer

  6. Thrift


09 网络

  1. 网络 7 层架构

  2. TCP/IP 原理

  3. TCP 三次握手/四次挥手

  4. HTTP 原理

  5. CDN 原理


10 日志

  1. Slf4j

  2. Log4j

  3. logBack

  4. ELK


11 Zookeeper

Zookeeper 是一个分布式协调服务,可用于服务发现,分布式锁,分布式领导选举,配置管理等。Zookeeper 提供了一个类似于 Linux 文件系统的树形结构(可认为是轻量级的内存文件系统,但只适合存少量信息,完全不适合存储大量文件或者大文件),同时提供了对于每个节点的监控与通知机制。

  1. Zookeeper 概念

  2. Zookeeper 角色

  3. Zookeeper 工作原理(原子广播)

  4. Zonde 有四种形式的目录节点


12 Kafka

Kafka 是一种高吞吐量、分布式、基于发布/订阅的消息系统,最初由 LinkedIn 公司开发,使用 Scala 语言编写,目前是 Apache 的开源项目。

  1. Kafka 概念

  2. Kafka 数据存储设计

  3. 生产者设计

  4. 消费者设计


13 RabbitMQ

RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现。AMQP :Advanced Message Queue,高级消息队列协议。它是应用层协议的一个开放标准,为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消息,并不受产品、开发语言等条件的限制。RabbitMQ 最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗

  1. 概念

  2. RabbitMQ 架构

  3. Exchange 类型


14 Hbase

base 是分布式、面向列的开源数据库(其实准确的说是面向列族)。HDFS 为 Hbase 提供可靠的底层数据存储服务,MapReduce 为 Hbase 提供高性能的计算能力,Zookeeper 为 Hbase 提供稳定服务和 Failover 机制,因此我们说 Hbase 是一个通过大量廉价的机器解决海量数据的高速存储和读取的分布式数据库解决方案。

  1. 概念

  2. 列式存储

  3. Hbase 核心概念

  4. Hbase 核心架构

  5. Hbase 的写逻辑

  6. Hbase VS Cassandra


15 MongoDB

MongoDB 是由 C++语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。

  1. 概念

  2. 特点


16 Cassandra

Apache Cassandra 是高度可扩展的,高性能的分布式 NoSQL 数据库。 Cassandra 旨在处理许多商品服务器上的大量数据,提供高可用性而无需担心单点故障。Cassandra 具有能够处理大量数据的分布式架构。 数据放置在具有多个复制因子的不同机器上,以获得高可用性,而无需担心单点故障。

  1. 概念

  2. 数据模型

  3. Cassandra 一致 hash 和虚拟节点

  4. Gossip 协议

  5. 数据复制

  6. 数据写请求和协调者

  7. 数据读请求和后台修复

  8. 数据存储(Commitlog、MemTable、SSTable)

  9. 二级索引

  10. 数据读写


17 设计模式

  1. 设计原则

  2. 工厂方法模式

  3. 抽象工厂模式

  4. 单例模式

  5. 建造者模式

  6. 原型模式

  7. 适配器模式

  8. 装饰器模式

  9. 代理模式

  10. 外观模式

  11. 桥接模式

  12. 组合模式

  13. 享元模式

  14. 策略模式

  15. 模板方法模式

  16. 观察者模式

  17. 迭代子模式

  18. 责任链模式

  19. 命令模式

  20. 备忘录模式

  21. 状态模式

  22. 访问者模式

  23. 中介者模式

  24. 解释器模式

18 负载均衡

载均衡 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展 网络设备 和 服务器 的带宽、增加 吞吐量 、加强网络数据处理能力、提高网络的灵活性和可用性。

  1. 四层负载均衡 VS 七层负载均衡

  2. 负载均衡算法/策略

  3. LVS

  4. Keepalive

  5. Nginx 反向代理负载均衡

  6. HAProxy

需要资料的小伙伴,点赞加收藏,关注我之后

可以点击这里即可获取到文章中的文档,资料
发布于: 18 小时前阅读数: 11
用户头像

Java架构师,高并发,高可用,分布式 2021.06.21 加入

领取文中资料加微信:MXC1146 即可获取

评论

发布
暂无评论
“闭关修炼”30 天,吃透这本“Java 核心知识”,跳槽面试不心慌!