Netty中的其他参数

1)ulimit -n

  • 属于操作系统参数

  • 这个参数决定的是一个进程可以读取某个文件的最大数量,在高并发的情况下,需要对这个参数进行调整

2)TCP_NODELAY

  • 属于 SocketChannal 参数

  • 就是在黏包那块说过的一个nagle,就是当我们发送的数据较小时,它会帮我们等待几个小的消息,再一起发送,默认值为false,就是开启nagle,我们在实际开发中要把它改为true,就是实时推送

3)SO_SNDBUF & SO_RCVBUF

  • SO_SNDBUF 属于 SocketChannal 参数

  • SO_RCVBUF 既可用于 SocketChannal 参数,也可以用于 ServerSocketChannal 参数(建议设置到 ServerSocketChannal 上)

  • 就是tcp那块黏包讲到的窗口大小缓冲区,这个我们不需要调整,现在的操作系统都非常智能

4)ALLOCATOR

  • 属于 SocketChannal 参数

  • 用来分配 ByteBuf, ctx.alloc()

  • 决定了是池化还是非池化

5)RCVBUF_ALLOCATOR

  • 属于 SocketChannal 参数

  • 控制 netty 接收缓冲区大小

  • 负责入站数据的分配,决定入站缓冲区的大小(并可动态调整),统一采用 direct 直接内存,具体池化还是非池化由 allocator 决定

  • 决定了接收数据的bytebuf的大小,会帮我们智能的调整,不需要我们手动调整

你可能感兴趣的:(Netty,java,nio,tcp/ip)