• Netty入门


    Netty特性

    设计:支持多种传输类型,阻塞和非阻塞的。简单而强大的线程模型,真正的无连接数据套接字(UDP)支持
    
    性能:拥有比Java的核心API更高的吞吐量以及更低的延迟,得益于池化和服用,拥有更低的资源消耗,最少的内存复制
    
    健壮性:不会因为慢速,快速或者超载的连接而导致OutOfMemoryError,消除在高速网络中NIO应用常见的不公平读写比率
    
    安全性:完整的SSL/TLS以及StartTLS支持
    
    社区驱动:发布快速而且频繁

    Netty核心组件

    Channel:Java NIO的一个基本构造,可以看作是传入或者传出数据的载体
    回调:回调方法
    Future:ChannelFuture不需要像JSK提供的Channel那样去手动检查对应操作是否完成。保证了Netty的完全异步和事件驱动
    事件和ChannelHandler:事件触发动作,这些动作一般包括记录日志,数据转换,流控制,应用程序逻辑

    Netty通过触发事件将Selector从应用程序中抽象出来。在内部,将会为每个Channel分配一个EventLoop,用以处理所有事件(注册感兴趣的事件,将事件派发给ChannelHandler,安排进一步动作)

    我大概画了下需要掌握的Netty控件,如下 

    几个重要接口

    EventLoop接口:用于处理连接的生命周期中所发生的事件
    ---栖息之鹰(一个外表懒洋洋的内心有激情的程序员) 此博客为笔者原著,转载时请注明出处,谢谢!
  • 相关阅读:
    matlab基本数据结构struct
    matlab基本函数strcmp num2str 字符串格式
    matlab基本函数inf, isempty, round, floor, fix
    matlab基本函数randperm end数组索引
    matlab基本函数find
    【未通过】LintCode #366 斐波纳契数列
    LintCode #3 统计数字
    计算1至n中数字X出现的次数
    LintCode #2 尾部的零
    LintCode #1 A + B 问题
  • 原文地址:https://www.cnblogs.com/roostinghawk/p/8041893.html
Copyright © 2020-2023  润新知