- 博客(3)
- 资源 (1)
- 收藏
- 关注
原创 Java NIO编程关注点
阅读yanf4j源码对于read事件、write事件的笔记 CPU大量的无效循环-写事件: 只要 TCP 连接适合数据写入时就会产生 OP_WRITE 事件,基本上 95% 以上的时间都会产生 OP_WRITE 事件。 由于很多时间都会产生 OP_WRITE 事件,一开始就注册的话会对服务器产生严重的性能损耗,过多的循环会导致 CPU 利用率骤增。 一般来说,如果没有数据写入时不要...
2011-12-02 18:01:47 103
原创 Java NIO ByteBuffer
在 NIO 库中,所有数据都是用缓冲区处理的。在读取数据时,它是直接读到缓冲区中的。在写入数据时,它是写入到缓冲区中的。任何时候访问 NIO 中的数据,都是将它放到缓冲区中。缓冲区实质上是一个数组。通常它是一个字节数组,但是也可以使用其他种类的数组。但是一个缓冲区不仅仅 是一个数组。缓冲区提供了对数据的结构化访问,而且还可以跟踪系统的读/写进程。 buffer其实只是一个美化了的数...
2011-12-02 17:39:37 86
原创 MINA ByteBuffer熟悉
前不久,一个客户使用MINA架构服务器,在与客户端通信时,出现了问题。表现的现象是第一次通讯可以,从第二次通讯开始就出错。那时候,我还没有接触过MINA,只好用二分法打印中间数据,最后花了两个多小时,找到了错误的原因,就是因为对ByteBuffer不熟悉,在使用ByteBuffer的limit方法时,产生了一个字节的错位。 ByteBuffer是MINA中最常用的类之一,搞清楚它的原理...
2011-12-02 15:43:15 98
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人