zoukankan      html  css  js  c++  java
  • 走进netty

          三月份开始看公司RPC框架的源码,发现如果要折腾明白,网络通讯这块知识必不可少.于是从如下几点开始逐步研究.

    一、基础知识篇

      1.Unix下5种I/O模型

                Linux的内核将所有外部设备都看作一个文件来操作,对于一个文件的读写操作会调用内核提供的系统命令,返回一个fd(文件描述符),而对于socket的读写也会有相应的描述符,称为stocket描述符,描述符就是一个数字,它指向内核中一个结构体(文件路径,数据区等一些属性).

        1-1) 阻塞I/O模型 ☆☆☆☆☆  

             如果数据没有准备好,一直等待...

             

        1-2) 非阻塞I/O模型 ☆☆☆

             被调用后立即返回一个状态值,无需等到IO操作完成.

              


        1-3) I/O复用模型 ☆☆☆☆☆

               

            
        1-4) 信号驱动I/O模型☆☆☆

            


        1-5) 异步I/O模型☆☆☆☆

           

      
      2.TCP/IP协议

              待续...

    版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 

    参考文章:

    Netty权威指南

    Unix中I/O模型 

    TCP/IP协议

    版权声明:本文版权归作者java潇邦和博客园和CSDN共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    install ros-indigo-tf2
    install ros-indigo-tf
    install diagnostic_updater
    install ros-indigo-ecl-build
    "CMAKE_CXX_COMPILER-NOTFOUND"
    shell 交互式选择(select)
    install ros indigo tf2
    a标签 在新页面打开
    bootstrap.min.css.map HTTP/1.1" 404 1699
    E: Sub-process /usr/bin/dpkg returned an error code (1)
  • 原文地址:https://www.cnblogs.com/sunrisexq/p/6601080.html
Copyright © 2011-2022 走看看