06 2020 档案

摘要:简介 在Java的Socket编程中,若使用阻塞式(BIO),则往往通过ServerSocket的accept()方法获取到客户端Socket之后,再使用客户端Socket的InputStream和OutputStream进行读写。Socket.getInputstream.read(byte[] 阅读全文
posted @ 2020-06-18 13:37 looyee 阅读(3229) 评论(0) 推荐(0)
摘要:本文简述JDK1.7的NIO在linux平台上的实现,对java NIO的一些核心概念如Selector,Channel,Buffer等,不会做过多解释,这些请参考JDK的文档。JDK 1.7 NIO Selector在linux平台上的实现类是sun.nio.ch.EPollSelectorImp 阅读全文
posted @ 2020-06-12 11:21 looyee 阅读(724) 评论(0) 推荐(0)
摘要:一、 介绍 Epoll 是一种高效的管理socket的模型,相对于select和poll来说具有更高的效率和易用性。传统的select以及poll的效率会因为 socket数量的线形递增而导致呈二次乃至三次方的下降,而epoll的性能不会随socket数量增加而下降。标准的linux-2.4.20内 阅读全文
posted @ 2020-06-11 16:04 looyee 阅读(431) 评论(0) 推荐(0)
摘要:在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时 阅读全文
posted @ 2020-06-11 15:25 looyee 阅读(264) 评论(0) 推荐(0)
摘要:Efficient data transfer through zero copyZero Copy I: User-Mode Perspective 0. 前言 在阅读RocketMQ的官方文档时,发现Chapter6.1中关于零拷贝的叙述中有点不理解,因此查阅了相关资料,来解释文中的说法。 Co 阅读全文
posted @ 2020-06-10 10:43 looyee 阅读(390) 评论(0) 推荐(0)