zoukankan      html  css  js  c++  java
  • netty(三) 组件介绍

    netty各组件说明:
    channel ----- Socket
    EventLoop -------控制流,多线程处理,并发
    channelFuture ------- 异步通知

    channel:
    主要是实现socket的I/O操作,降低直接使用socket的复杂性,提供了EmbeddedChannel,LocalServerChannel,NioSocketChannel等实现,可选择性使用;

    EventLoop:
    是netty的核心抽象,用于处理连接的生命周期中所发生的事件。EventlLoop是由EventLoopGroup来提供的。
    一个EventLoopGroup可以包含多个EventLoop;一个EventLoop是一个Tread线程,可以分配给一个或者多个channel;
    一个channel在生命周期中只注册一个EventLoop。

    channelFuture:
    作为异步回调的监听方法,可设置addListener监听,用于发送信息后的回调等操作。

    ==============================================
    (在EventLoop上)
    channelHandler:
    充当处理所有入站和出站数据的应用程序逻辑的容器。数据格式的转化,编码和解码。
    常用的有ChannelInboundHandler,ChannelOutboundHandler等。

    ChannelPileline:
    是ChannelHandler链的容器,并定义用于在该链上的传播入站和出站事件流的API.channelPipleline中的ChannelHandlerContext是用于代表
    channelHandler和channelPipleline之间的绑定,用于获得上下文的。


    ==============================================
    bootStrap 和 serverBootstrap
    用于实现应用程序ip,端口的绑定并启动的引导作用。
    bootStrap:用于客户端,需要一个EventlLoopGroup
    ServerBootStrap用于服务端的,需要两个EventLoopGroup;一个用于ServerChannel绑定本地端口正在监听的套接字;一个用于处理传入的客户端连接的channel;

  • 相关阅读:
    TheFourthJavaText
    Java语法基础总结
    课程作业02
    读大道至简第二章感悟
    课时作业
    读大道至简——编程的精义感想
    使用Mybatis
    使用matlab遇到的问题
    machine learning (7)---normal equation相对于gradient descent而言求解linear regression问题的另一种方式
    machine learning (6)---how to choose features, polynomial regression
  • 原文地址:https://www.cnblogs.com/minsons/p/7573631.html
Copyright © 2011-2022 走看看