• 【Netty】1-2. TCP通信与Netty基本介绍


    Hi,小伙伴们;在学习Netty高性能通信框架之前,我们先来一起回顾一下TCP的基础理论。

    1. Socket基础概念:

    • Socket又称“套接字”,应用程序通常通过“套接字”向网络发出请求或者应答网络请求Socket、ServerSocket类库位于java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,不因为在服务器端或在客户端而产生不同级别。不管是Socket还是ServerSocket它们的工作都是通过Socketlmpl类及其子类完成的。
    • 套接字之间的连接过程可以分为四个步骤:
    1. 服务器监听;
    2. 客户端请求服务器;
    3. 服务器确认;
    4. 客户端确认,进行通信。

    经常在面试的时候,都会被问到TCP的基础问题:什么是三次握手,四次挥手(对于建立连接和断开连接),为什么需要三次握手,为什么需要四次挥手(这些次数是怎么来的)?如下图,在建立连接的时候进行3次握手

    2. 连接时三次握手,断开时四次挥手详情

    3.Netty简介

    我们为为什么选择Netty?

            原因无他,简单!

    • 我们再也不必去编写复杂的代码逻辑去实现通信,我们再也不需要去考虑性能问题,不需要考虑编解码问题,半包读写问题等,这些强大的Netty已经帮我们实现好了,我们只需要使用即可!
    • Netty是也就最流行的NIO框架,他的健壮性、功能、性能、可定制性和可扩展性在同类框架都是首屈一指的。它已经得到成百上千的商业商用项目验证,如Hadoop的RPC框架Avro、以及我们之后学习的JMS框架|
    • 强大的RocketMQ、还有主流的分布式通信框架Dubbo等等;
    • Netty是一个NIO client-server(客户端服务器)框架,使用Netty可以快速开发网络应用,例如服务器和客户端协议。Ntty提供了一种新的方式来使开发网络应用程序,这种新的方式使得它很容易使用和有很强的扩展性。Netty的内部实现是很复杂的,但是Netty提供了简单易用的api从网络处理代码中解耦业务逻辑。Netty是完全基于NIO实现的,所以整个Netty都是异步的。
    • Netty架构图:

    •  Netty特性:

  • 相关阅读:
    攻防世界Check
    OpenCV自学笔记十:图像平滑处理
    常用reduce方法的使用
    【数据结构】线性表与顺序表
    iMazing 2023年最新苹果手机怎么备份恢复照片
    Day709.JShell -Java8后最重要新特性
    nodejs+vue+elementui高校体育馆场地预订系统
    【高速数字化仪应用案例系列】虹科数字化仪在通信领域的应用
    数据权限-字段权限【实践篇-结合相关业务详细讲解如何实现】(基于若依框架)
    精美的早安问候语,暖心祝福,开心每一天
  • 原文地址:https://blog.csdn.net/ladymorgana/article/details/126826983