前言
Alibaba作为国内互联网行业的“老大”,一直以来也是很多“数码宝贝”梦寐以求的公司,我个人是做Java开发的,阿里这些年也开发了很多屌炸天的开源项目,像什么Spring Cloud Alibaba,开源Java诊断工具Arthas,Apache Dubbo,JDBC连接池、监控组件Druid等等,属实牛逼!
阿里能做到这样,也不知道各位“数码宝贝”花了多少个日日夜夜换来的,因此我本也不想进大厂累死累活的。之前每个月在北京每个月拿个小30k,日子过的也还算不错,但自从有了娃以后,越发有种家庭责任感,钱也越来越感觉不够花,因此我便萌生了进阿里的想法。
因为今年疫情原因,北京管理相当严格,我在家也是间断的在补充新知识,夯实基础,直到今年7月中下旬才拿到了Alibaba的offer,下面我会为大家分享我主要在用的一些资料笔记,以及面经分享。
下面会介绍这些资料笔记的主要内容涵盖的知识点,由于文章篇幅,所以只展示了截图内容
一、Netty概念及体系结构
01 Netty——异步和事件驱动
- Java网络编程NIO选择器
- Netty的简介、谁在使用Netty、异步和事件驱动
- Netty的核心组件
02 你的第一款Netty应用程序
- 获取并安装Java开发
- 下载和安装IDE、Apache Maven
- Netty客户端服务器概览
- 编写Echo客户端
- 构建和运行Echo服务器和客户端
03 Netty的组件和设计
- Channel、EventLoop 和ChannelFuture
- ChannelHandler 接口 和 ChannelPipeline 接口
- 编码器和解码器
- 抽象类 SimpleChannel-InboundHandler
04 传输
- 不通过 Netty 使用 OIO和 NIO
- NIO——非阻塞 I/O Epoll——用于 Linux的本地非阻塞传输
- OIO——旧的阻塞 I/O 用于 JVM 内部通信的
- Embedded 传输
05 ByteBuf 类——Netty 的数据容器
- 字节级操作
- ByteBufHolder 接口
- 按需分配:Byte-BufAllocator 接口
06 ChannelHandler 和ChannelPipeline
- ChannelHandler 家族
- 修改 ChannelPipeline
- ChannelHandlerContext接口
- 异常处理
07 EventLoop 和线程模型
- 线程模型概述
- Netty 4 中的 I/O 和事件处理
- JDK 的任务调度 API
- 线程管理、 EventLoop/线程的分配
08 引导
- Bootstrap 类
- 引导客户端和无连接协议
- 从 Channel引导客户端
- 在引导过程中添加多个ChannelHandler
- 使用 Netty 的 Channel-Option 和属性
总结:绘上一张Kakfa架构思维大纲脑图(xmind)
其实关于Kafka,能问的问题实在是太多了,扒了几天,最终筛选出44问:基础篇17问、进阶篇15问、高级篇12问,个个直戳痛点,不知道如果你不着急看答案,又能答出几个呢?
若是对Kafka的知识还回忆不起来,不妨先看我手绘的知识总结脑图(xmind不能上传,文章里用的是图片版)进行整体架构的梳理
梳理了知识,刷完了面试,如若你还想进一步的深入学习解读kafka以及源码,那么接下来的这份《手写“kafka”》将会是个不错的选择。
-
Kafka入门
-
为什么选择Kafka
-
Kafka的安装、管理和配置
-
Kafka的集群
-
第一个Kafka程序
-
Kafka的生产者
-
Kafka的消费者
-
深入理解Kafka
-
可靠的数据传递
-
Spring和Kafka的整合
-
SpringBoot和Kafka的整合
-
Kafka实战之削峰填谷
- 数据管道和流式处理(了解即可)
本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录