
Netty
武汉红喜
专注于消息中间件
展开
-
【转载】NIO-Selector 详解
本文转载自http://shift-alt-ctrl.iteye.com/blog/1840411 Selector本身为抽象类,AbstractSelector是Selector类的抽象实现类,具体的实现类更加底层(SelectorImpl,位于sun.nio.ch);Selector即为"选择器",支撑了NIO的多路复用.Selector不能直接创建,需要通过Selector.open原创 2016-01-22 09:42:13 · 391 阅读 · 0 评论 -
浅析IO模型
也许很多朋友在学习NIO的时候都会感觉有点吃力,对里面的很多概念都感觉不是那么明朗。在进入Java NIO编程之前,我们今天先来讨论一些比较基础的知识:I/O模型。下面本文先从同步和异步的概念 说起,然后接着阐述了阻塞和非阻塞的区别,接着介绍了阻塞IO和非阻塞IO的区别,然后介绍了同步IO和异步IO的区别,接下来介绍了5种IO模型,最后介绍了两种和高性能IO设计相关的设计模式(Reactor和Pr...转载 2018-03-23 14:50:53 · 437 阅读 · 0 评论 -
Netty的线程模型
1. 背景1.1. Java线程模型的演进1.1.1. 单线程时间回到十几年前,那时主流的CPU都还是单核(除了商用高性能的小机),CPU的核心频率是机器最重要的指标之一。在Java领域当时比较流行的是单线程编程,对于CPU密集型的应用程序而言,频繁的通过多线程进行协作和抢占时间片反而会降低性能。1.1.2. 多线程随着硬件性能的提升,CPU的核数越来越越多,很多服务器标配已经达到32或64核。通...转载 2017-06-19 01:09:39 · 419 阅读 · 0 评论 -
【转载】example for NIO
特别声明:本文转载自 QING_____ NIO-Socket通讯,为我们解决了server端多线程设计方面的性能/吞吐量等多方面的问题,它提供了以非阻塞模式 + 线程池的方式来解决Server端高并发问题..NIO并不能显著的提升Client-server的通讯性能(其中包括全局性耗时总和,Server物理机资源开销和实际计算量),但是它可以确保Server端在支撑相应的并发量情况下,对原创 2016-01-22 09:41:44 · 364 阅读 · 0 评论 -
【转载】NIO-SelectableChannel
本文转载自http://shift-alt-ctrl.iteye.com/blog/1841324 SelectableChannel("可被选择"通道):抽象类,此类实现了InterruptableChannel接口."可选择"通道,就是noblocking通道,它的实现需要Selector的支持.因此这些Channel取名为"SelectableChannel"是可以理解的. 为 了原创 2016-01-22 09:42:07 · 1431 阅读 · 0 评论