前言
我想,很多人和我一样在煎熬中度过着2021年,也经历了不少困难,随着国家对疫情的控制,互联网行业又重新迎来了生机。
我在2021年拿到了阿里Java研发岗的offer,也算是正式提桶进大厂的打工人了。于是乎,我想把我的经历分享给大家,希望你们在金三银四这个跳槽旺季找到一份更满意的工作!
面试结束后我大概总结了一下,发现还是准备不够充分,基本上全靠自己平时的积累才侥幸通过。因此,我建议大家平时一定要养成学习的习惯,哪怕只花30min,日积月累总会有收获;其次,提前两个月的时间做好充分的准备,最好不要临时抱佛脚。
一、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实战之削峰填谷
-
数据管道和流式处理(了解即可)
Spring和Kafka的整合
-
SpringBoot和Kafka的整合
-
Kafka实战之削峰填谷
-
数据管道和流式处理(了解即可)
[外链图片转存中…(img-jwSB0IkZ-1621918221852)]