# 2.2:通信协议包定义

作者:小傅哥
博客:https://bugstack.cn (opens new window)

沉淀、分享、成长,让自己和他人都能有所收获!

# 一、前言

有些小伙伴,可能刚开始接触 Netty 通信,并不一定能理解为什么要做通信协议包的定义。那么你是否接触过 RPC 框架,比如说使用过 Dubbo 做一些分布式的接口,那么这个时候是需要将提供接口的一端,提供一个 jar 包,这个 jar 包就是接口信息的描述性文件。

好 !不管你是否接触过或者学习过。为了能让小伙伴们更清晰的了解定义通信协议包,同时也让没怎么接触过 Netty 的伙伴了解 Netty,接下来我们做一些 Netty 通信的案例,以此来讲解 Netty 的功能和协议包的定义。

# 二、Netty 介绍

  • Netty 是什么?

    Netty 是由 JBOSS 提供的一个 java 开源框架,现为 Github 上的独立项目。Netty 提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。

  • 哪些框架里用到了 Netty?

    各类 RPC 框架比如 Dubbo(这可能也是你面试常被问到的吧?痛不痛)、还有 MQ、注册中心,还有网页聊天,物联网,简直太多地方都需要用到 Netty。

  • 为什么使用 Netty?

    最容易让你理解的一点就是,Netty 大大的简化了 NIO 的开发。同时各个企业级物联网项目都会有 Netty 的身影,尤其是在 5G 的时代会有更多的数据传输需求。而 Netty 是一款非常 niubility 的 Socket 框架,是通信编程变得更加容易易用。