`

netty学习笔记(初步)

阅读更多

建议:netty大部分的理解问题都可以通过查询相应类的javadoc文档查到。netty的javadoc文档写的是图文并茂啊:-)

学习netty,需要搞清楚几个概念:

channel

channelpipeline

upstream,downstream

future

 

upstream,downstream:可以用下图帮助理解:

stream in channel

【引用于

Netty Tutorial Part 1: Introduction to Netty

by nickman

upstream event由channelUpstreamHandler处理,downstream event由channelDownstreamHandler处理,一般UpstreamHandler或DownstreamHandler的处理顺序由其加入channelPipeline的顺序决定,UpstreamHandler的加入不影响DownstreamHandler的加入顺序,如(从左至右依次加入channelPipeline):

UpstreamHandler0,DownstreamHandler0,UpstreamHandler1,DownstreamHandler1

Upstream event处理顺序:UpstreamHandler0,UpstreamHandler1

Downstream event处理顺序:DownstreamHandler1,DownstreamHandler0

 

之后应用时最好理解FrameDecoder和ReplayingDecoder,直接参考javadoc就足够了。

FrameDecoder可以通过不断重新调用decode方法解析需要的数据帧

而ReplayingDecoder则巧妙的使用exception返回的方式,简化问题,使得我们可以通过直接调用buffer的相应读取方法进行帧的解析。同时为了弥补性能上的损失,提供了状态转换的方式提高帧解析的效率。

 

---------------------------------------------------------------------------------------------------------------------------------

multichannel client解决方法:one channelFactory, many ClientBootstraps

只是用一个ChannelFactory进行资源的分配和管理,然后每个Channel的特殊配置则由ClientBootstrap确定。

相当于实现了connect(inetaddress,channelPipeline[特定的])这样的组合!!

ps:解决方案是直接在javadoc中的注释中看到的!!看来所有的问题都可以通过javadoc解决!

分享到:
评论

相关推荐

    Netty基础,用于学习Netty,参考黑马程序员的netty教程

    Netty基础,用于学习Netty,参考黑马程序员的netty教程

    netty学习笔记

    ### Netty学习笔记知识点概述 #### 一、Netty简介 Netty是一个广泛使用的高性能、异步事件驱动的网络应用程序框架,它简化了网络编程的复杂性,使得开发者能够更轻松地开发高性能、高可靠性的网络服务器和客户端。...

    Netty全套学习资源(包括源码、笔记、学习文档等)

    二、Netty 学习笔记 学习笔记通常包含了作者在学习过程中的总结和实践经验,对于初学者来说极具参考价值。笔记可能涵盖 Netty 的安装配置、基本使用、线程模型、缓冲区操作、编解码器的实现以及异常处理等方面,帮助...

    Netty学习笔记_Springboot实现自定义协议.docx

    Netty学习笔记_Springboot实现自定义协议 本文主要介绍了使用Netty框架在Springboot项目中实现自定义协议的方法。自定义协议是指在网络通信中,使用特定的数据格式来传输数据,以满足特定的业务需求。在本文中,...

    Netty4.0学习笔记系列之四:混合使用coder和handler

    在本篇Netty4.0学习笔记中,我们将聚焦于如何在实际应用中混合使用`coder`和`handler`,这是Netty框架中非常关键的一部分,对于构建高性能、低延迟的网络应用程序至关重要。Netty是一个用Java编写的异步事件驱动的...

    自己学习netty的笔记和Demo

    在Netty网络框架学习笔记-1中,可能详细介绍了NIO的基本概念,如选择器(Selector)、通道(Channel)和缓冲区(Buffer),以及它们如何协同工作以提高并发处理能力。 2. **Netty入门**:笔记-3和-5探讨了Netty的入门知识...

    Netty笔记源码资料.rar

    1.Netty 是由 JBOSS 提供的一个 Java 开源框架,现为 Github 上的独立项目。 2.Netty 是一个 异步的、 基于事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络 IO 程序。

    Netty学习资料.zip

    这个“Netty学习资料.zip”压缩包包含了韩顺平老师关于 Netty 的一系列教学资源,包括资料、笔记、课件、代码和软件,这些都是深入理解和实践 Netty 技术的重要参考资料。 首先,资料部分可能包含了一些关于 Netty ...

    NETTY教程笔记啊啊

    NETTY教程笔记啊啊

    Netty4.0学习笔记系列之六:多种通讯协议支持

    在本篇Netty4.0学习笔记系列之六中,我们将深入探讨Netty框架如何支持多种通讯协议,以及它在实现高效、灵活的网络通信中的关键特性。Netty是一个高性能、异步事件驱动的网络应用框架,适用于开发服务器和客户端的...

    Netty全面学习笔记(非常详细具体,排版很好)

    这篇全面的学习笔记主要围绕 Netty 的运行环境、架构、网络模型(Reactor 模式)以及处理模型(Pipeline 模式)进行详细讲解。 1. **运行环境** 在学习 Netty 时,使用的版本是 Netty-3.2.5.Final,兼容 JDK 1.6。...

    netty开发笔记

    ### Netty开发代理服务的关键知识点 #### 一、Netty框架概述 Netty是一个高性能、异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器与客户端。Netty提供了一种灵活的方式来处理各种网络操作...

    Netty4.0学习笔记系列之五:自定义通讯协议

    在本篇“Netty4.0学习笔记系列之五:自定义通讯协议”中,我们将深入探讨如何在Netty框架下构建和实现自己的通信协议。Netty是一个高性能、异步事件驱动的网络应用框架,广泛应用于Java领域的服务器开发,如网络游戏...

    Netty4.0学习笔记系列之二:Handler的执行顺序

    在本篇“Netty4.0学习笔记系列之二:Handler的执行顺序”中,我们将深入探讨Netty中的Handler处理链以及它们的执行流程。 首先,Netty 中的 ChannelHandler 是处理 I/O 事件或拦截 I/O 操作的核心组件。每个 ...

    Netty4.0学习笔记系列之三:构建简单的http服务

    Netty4.0学习笔记系列之三是关于构建简单的HTTP服务的教程,这主要涉及网络编程、服务器开发以及Java NIO(非阻塞I/O)的相关知识。Netty是一个高性能、异步事件驱动的网络应用程序框架,它使得开发可伸缩且稳定的...

    netty官网学习手册中文版

    这个“netty官网学习手册中文版”针对的是Netty的3.1版本,虽然现在的Netty已经发展到了5.x版本,但3.1版本的知识仍然具有历史参考价值,特别是对于那些初次接触或需要理解Netty基础概念的开发者来说。 1. **Netty...

    Netty4.0学习笔记系列之一:Server与Client的通讯

    在本文中,我们将深入探讨Netty 4.0的学习笔记,特别是关于Server与Client之间的通信机制。 首先,我们要理解Netty的核心概念——NIO(非阻塞I/O)。Netty基于Java NIO库构建,它提供了更高级别的API,简化了多路...

    netty-netty-4.1.19.Final.zip_netty_netty学习_rocketmq

    Netty 是一个高性能、异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。...深入学习和理解Netty,不仅能够帮助你更好地使用RocketMQ,也有助于你在其他领域开发高性能的网络应用。

Global site tag (gtag.js) - Google Analytics