最新文章列表

tomcat的NIO线程模型源码分析

1 tomcat8的并发参数控制 这种问题其实到官方文档上查看一番就可以知道,tomcat很早的版本还是使用的BIO,之后就支持NIO了,具体版本我也不记得了,有兴趣的自己可以去查下。本篇的tomcat版本是tomcat8.5。可以到这里看下tomcat8.5的配置参数 我们先来简单回顾下目前一般的NIO服务器端的大致实现,借鉴infoq上的一篇文章Netty系列之Netty线程模型中的一张 ...
IXHONG 评论(2) 有2109人浏览 2017-03-06 00:00

Netty的线程模型

1. 背景 1.1. Java线程模型的演进 1.1.1. 单线程 时间回到十几年前,那时主流的CPU都还是单核(除了商用高性能的小机),CPU的核心频率是机器最重要的指标之一。 在Java领域当时比较流行的是单线程编程,对于CPU密集型的应用程序而言,频繁的通过多线程进行协作和抢占时间片反而会降低性能。
IXHONG 评论(0) 有873人浏览 2017-03-05 21:23

netty5笔记-线程模型4-MpscLinkedQueue

NioEventLoop里面使用了MpscLinkedQueue作为taskQueue,替换了父类中默认的LinkedBlockingQueue队列。taskQueue主要用于存放可执行任务,其调用的频率非常高,因此使用一个更高效的队列能带来很大的收益。 为什么在NioEvnetLoop里用MpscLinkedQueue替换了LinkedBlockingQueue,是使用了更好的算法?还是通过舍弃 ...
youaremoon 评论(0) 有786人浏览 2015-12-18 15:10

netty5笔记-线程模型3-EventLoop

NioEventLoop相对NioEventLoopGroup来说就复杂很多了,需要一定的耐心来看这篇文章。 首先从NioEventLoop的启动讲起,对于线程池来说,启动一般都是从第一个 ...
youaremoon 评论(0) 有918人浏览 2015-12-15 10:17

netty5笔记-线程模型2-EventLoopGroup

阅读本文之前,你需要对java的线程池有一定的了解,因为这里不会过多的讲解。 今天我们主要的任务就是看下netty中一个非常重要的类EventLoop,通过这系列文章,你应该了解EventLoop适用的场景,不会滥用它而导致你的应用缓慢。Netty使用了典型的Reactor模型结构,这其中一个很重要的角色就是EventLoop,它使用循环的方式来处理IO或者其他事件。 上图是Even ...
youaremoon 评论(0) 有1482人浏览 2015-12-13 13:19

netty5笔记-线程模型1-Promise

冬天实在太冷了,习惯了广东的天气,突然换个地方还真有点不适应, 早就想写的学习笔记也一直拖到现在。下面进入正题,一起来学习下netty的线程池实现。 我们知道java本身实现了一套线程池,即我们常见的ExecutorService。那么netty为什么还要定义自己的线程模型,什么时候适合用netty线程池,什么时候适合用ExecutorService。相信你看了这几篇文章就会有眉目。 先来张大图 ...
youaremoon 评论(0) 有953人浏览 2015-12-13 01:03

常见线程模型

在现代操作系统中,进程支持多线程。进程是资源管理的最小单元;而线程是程序执行的最小单元。一个进程的组成实体可以分为两大部分:线程集合资 ...
jackyhongvip 评论(0) 有4122人浏览 2012-01-09 10:42

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics