网络编程,达到一定量级绕不过去的问题高并发,尤其在智能设备越来越多的当下,信息各种互通。

IO类型

    主要分为

       1.同步阻塞(Blocking IO)  BIO    普通的IO调用

java IO记录

       2.同步非阻塞(Non-Blocking IO)   需要多次确认

java IO记录

       3.异步阻塞--- 多路复用(IO Multiplexing) 通常说的NIO 指的就是这个 

java IO记录

基于系统(linux、window)提供select/epoll 机制,才能实现NIO。

通过selector  channel  buffer 使用reactor模式 可以使用单线程调控N多请求。

通常使用经典的netty(在Java nio基础上封装)进行使用。

netty :api使用方便,配置性好,修复Java nio select() 空调用导致cpu% bug ,社区活跃 成熟稳定

       4.异步非阻塞(Asynchronous IO)   AIO

java IO记录

需要系统(linux、window)支持,目前window有一套异步方案,linux只是模拟,所以使用的还是NIO 

 

网络套接字访问 需要考虑粘包 拆包  通过特定字符、固定长度、http头信息中的长度 进行包组装

暂且这样吧

 

    

相关文章:

  • 2021-05-24
  • 2021-11-13
  • 2021-06-17
  • 2021-07-12
  • 2021-06-29
  • 2022-02-09
  • 2021-07-21
猜你喜欢
  • 2022-01-25
  • 2021-04-09
  • 2021-11-29
  • 2021-04-23
  • 2021-12-24
  • 2021-06-12
  • 2021-09-10
相关资源
相似解决方案