/ 实战 / Java读源码之Netty深入剖析
收藏

Java读源码之Netty深入剖析

解析netty各大组件细节/百万级性能调优/设计模式实际运用

Java读源码之Netty深入剖析

难度 高级 时长 11小时30分钟 学习人数 1118 综合评分 9.80分

Java读源码之Netty深入剖析

观看试看视频

Java读源码之Netty深入剖析
Netty的横空出世让Java开发者眼前一亮,数据流处理、应用程序开启、处理协议编码等工作因为Netty都变得更加简单,也正因如此,掌握Netty也成为了抢手Java开发的必备素质。本次课程从Socket例子入手,一步步深入探究Netty源码,剖析代码背后的原理,解决面试中遇到的Netty问题,彻底掌握Netty。
闪电侠

高级研发工程师

课程预览

检测到您还没有关注慕课网服务号,无法接收课程更新通知。请扫描二维码即可绑定
重新观看

深度解析Netty源码 让你怎么面试都不怕

想要高薪职位,首先你要深入理解框架源码
1
服务的socket在哪里初始化?
在哪里accept连接?

理顺服务端启动流程

ServerBootstrap外观,NioServerSocketChannel创建,初始
化,注册selector,绑定端口,接受新连接

2
默认情况下,Netty服务端启动多少线程?何时启动?
Netty如何解决JDK空轮询bug?
Netty如何保证异步串行无锁化?

吃透高并发线程模型

深入理解Netty无锁化串行设计,精心设计的reactor线程模型将
榨干你的cpu,打满你的网卡,让你的应用程序性能爆表

3
Netty在哪里检测有新连接接入的?
新连接是怎样注册到NioEventLoop线程的?

通晓新连接接入流程

boos reactor线程,监测新连接,创建NioSocketChannel,IO线
程分配,selector注册事件

4
Netty是如何判断ChannelHandler类型的?
对于ChannelHandler的添加应遵循什么顺序?
用户手动触发事件传播,不同触发方式的区别?

明晰事件传播机制脉络

大动脉pipeline,处理器channelHandler,inbound、outbound
事件传播,异常传播

5
Netty内存类别有哪些?
如何减少多线程内存分配之间的竞争?
不同大小的内存是如何进行分配的?

攻破内存分配机制

ByteBufAllocator分类,ByteBuf分类,堆内堆外,池化非池化,
Unsafe非Unsafe,area、chunk、page、subpage,内存分级,
内存缓存片段等概念一网打尽

6
解码器抽象的解码过程是什么样的?
Netty里面有哪些拆箱即用的解码器?
如何把对象变成字节流,最终写到Socket底层?

掌握编解码原理

编解码顶层抽象,定长解码器,行解码器,分隔符解码器,基于
长度域解码器全面分析,编码抽象,writeAndFlush深入分析

读完源码,也许你也能像老师一样,给框架作者提Issue,并被采纳

只要你有Netty的使用经验,就能入手跟着读源码

从未读过任何框架源码也不慌,勇敢迈出第一步,老师带你一起飞

类比Socket通信流程,降低学习难度,搞清Netty源码

想写出好代码
先看好代码怎么写

深入分析Netty设计模式使用
带你迅速提高编码技能
让代码变得优雅、可靠、高质量

真实百万级调优策略,带你玩转性能调优

单机百万连接调试,应用级调优演示

晓悟通用性能
工具类

FastThreadLocal,比jdk的ThreadLocal更快
轻量级对象池Recycler,对象复用,减少gc

高并发长连
生产环境调优技能

从系统层面和应用层面通过多种手段
来提高单机连接数,提升应用程序性能

学员专享增值服务

问答专区

关于课程的问题都可在问答区随时提问,讲

师会进行集中答疑

源码开放

课程案例代码完全开放给你,你可以根据

所学知识自行修改、优化

适合人群

有Netty编程经验,想了解Netty底层实现的小伙伴,IDE不熟悉的小伙伴
可以学习老师的《IntelliJ IDEA神器使用技巧》课程

技术储备要求

IntelliJ IDEA,会使用虚拟机,maven,使用过Netty
了解nio,多线程知识

环境参数

  • 基础工具 Maven,JDK8
  • 开发工具 IntelliJ IDEA
  • 演示工具 Virtual Box,Vagrant
  • 项目框架 Netty 4.1.6.Final

万事俱备 只等你来

  • 爱吃橘子的段子手

    之前一直想评论,但想想还是等看的差不多之后,会对整体有个综合的评估。现在看80%多了,目前看来,这是一部真正带我走入netty的一部课程,也正是这套课程让我对把整个netty的脉络给贯通了起来,对于初学者读源码,其实并不需要过多的高深复杂的逻辑,重要的是能将整个框架的各个组件进行串通,知道整体的运作流程,然后对组件进行逐一深入,到了这种程度,哪怕不靠哪个教程,靠自己都能摸清其有价值的细节。而这套课程对此做的非常不错,每个组件提取出有用的逻辑,放弃其他无关的细节,更重要的是贯穿整个框架的思路,这是我特别喜欢的一点。提取出了netty骨架,之后的细节我们即使靠自己也能慢慢做到精通。

  • 纪宇航

    这是一门对Java开发人员非常重要的课程,源码的学习方式是不可逃避的。Netty也是大型互联网公司面试必备的问题,如果没有分布式开发经验,在面试时提出自己阅读过Netty源码,并能清晰表达的话。这部分内容会是很重要的加分项。

  • 鋒Nic

    闪电侠Netty源码解析的很到位,看完这套视频再翻下Netty权威指南跟Netty实战基本就掌握Netty原理跟底层实现,有不懂的地方闪电侠也能按照源码详细解释,总得来说Netty源码解析视频非常赞非常Nice受益匪浅,不仅能熟悉掌握Netty的源码实现,并且还能触类旁通按照闪电侠的读源码技巧很容易上手解析RPC中间件的源码,五星好评!

查看全部34条用户评价
提问
数据加载中...
意见反馈 去赚学费 帮助中心 APP下载
官方微信