zoukankan      html  css  js  c++  java
  • 网络通信概念

    1. BIO,同步阻塞IO,阻塞整个步骤,如果连接少,他的延迟是最低的,因为一个线程只处理一个连接,适用于少连接且延迟低的场景,比如说数据库连接。

    2. NIO,同步非阻塞IO,阻塞业务处理但不阻塞数据接收,适用于高并发且处理简单的场景,比如聊天软件。

    3. 多路复用IO,他的两个步骤处理是分开的,也就是说,一个连接可能他的数据接收是线程a完成的,数据处理是线程b完成的,他比BIO能处理更多请求。

    4. 信号驱动IO,这种IO模型主要用在嵌入式开发,不参与讨论。

    5. 异步IO,他的数据请求和数据处理都是异步的,数据请求一次返回一次,适用于长连接的业务场景

    同步 异步 阻塞 非阻塞

    Netty封装了JDK的NIO

    Netty提供了拆包、装包的操作

    I/O多路复用

    通道 channel

    选择器  selector

    tcp以流的形式进行传输,会发生沾包和分包的现象      套接字缓冲区的大小和发送包的大小

  • 相关阅读:
    vue 添加对象的新属性的方法
    vue 简单的c3属性写法
    大数据分析技术生态圈一览
    网络
    Axis2 WebService客户端Axis2调用
    前端资源
    不错的数据库
    dubbo
    大数据相关
    This is very likely to create a memory leak 异常
  • 原文地址:https://www.cnblogs.com/pass-ion/p/14705064.html
Copyright © 2011-2022 走看看