DotNetty项目基本了解和介绍

一、DotNetty背景介绍

            DotNetty是微软的Azure团队,使用C#实现的Netty的版本发布。不但使用了C#和.Net平台的技术特点,并且保留了Netty原来绝大部分的编程接口。让我们在使用时,完全可以依照Netty官方的教程来学习和使用DotNetty应用程序。

 
DotNetty同时也是开源的,它的源代码托管在Github上: https://github.com/azure/dotnetty

Netty 的官方文档 : http://netty.io/wiki/all-documents.html

 

二、DotNetty项目各个程序集介绍

       从Github网站下载的项目中我们比较关注的两个文件夹,examples 和 src 。

          examples中都是基本调用使用DotNetty的范例,src中是DotNetty的基础源码库。我常用的是 Echo.Server 与 Echo.Client ,一个服务端,一个客户端。

          src 文件夹下的程序集介绍:

  • DotNetty.Buffers     

           DotNetty.Buffers 是对内存缓冲区管理的封装。

  • DotNetty.Codecs   

          DotNetty.Codecs 是对编解码是封装,包括一些基础基类的实现,我们在项目中自定义的协议,都要继承该项目的特定基类和实现。

  • DotNetty.Codecs.Mqtt

          MQTT(消息队列遥测传输)编解码是封装,包括一些基础基类的实现。

  • DotNetty.Codecs.Protobuf

         Protobuf 编解码是封装,包括一些基础基类的实现。

  • DotNetty.Codecs.ProtocolBuffers

         ProtocolBuffers编解码是封装,包括一些基础基类的实现。

  • DotNetty.Codecs.Redis

         Redis 协议编解码是封装,包括一些基础基类的实现。

  • DotNetty.Common

         DotNetty.Common 是公共的类库项目,包装线程池,并行任务和常用帮助类的封装。

  • DotNetty.Handlers

          DotNetty.Handlers 封装了常用的管道处理器,比如Tls编解码,超时机制,心跳检查,日志等。

  • DotNetty.Transport

         DotNetty.Transport 是DotNetty核心的实现,Socket基础框架,通信模式:异步非阻塞。

  • DotNetty.Transport.Libuv

         DotNetty.Transport.Libuv是DotNetty自己实现基于Libuv (高性能的,事件驱动的I/O库) 核心的实现。

 

posted @ 2018-11-16 01:04  离散音符  阅读(569)  评论(0编辑  收藏  举报