文档章节

计算最佳线程数

woshixin
 woshixin
发布于 02/22 20:57
字数 294
阅读 6
收藏 0

计算出应该用于应用程序的理论最佳线程数有助于我们的程序的性能,应用程序运行时特征主要有CPU密集型工作和主要等待IO两种特征,或者是混合一起。

CPU 任务

threads = number of CPUs + 1

在Fork/Join框架中,默认的线程数是cpu核心数。这很直观,让CPU尽可能在做事情,不要闲着,压榨劳动力。

IO 任务

计算IO任务的线程的最佳数量没有那么明显。在IO绑定任务期间,CPU将处于空闲状态(等待或阻塞)。此空闲时间可以更好地用于启动另一个IO请求。

我们可以将其wait time / service time视为衡量任务竞争程度的指标。

参考:http://baddotrobot.com/blog/2013/06/01/optimum-number-of-threads/

 

© 著作权归作者所有

共有 人打赏支持
woshixin
粉丝 28
博文 329
码字总数 256964
作品 0
杭州
程序员
私信 提问
关于服务器性能的思考

一、服务器性能 平常的工作中,在衡量服务器的性能时,经常会涉及到几个指标,load、cpu、mem、qps、rt,其中load、cpu、mem来衡量机器性能,qps、rt来衡量应用性能。 一般情况下对于机器性能...

zqrferrari
2017/07/12
0
0
QPS、PV 、RT(响应时间)之间的关系

在进行系统性能压测和系统性能优化的时候,会涉及到QPS,PV,RT相关的概念,本文总结一下QPS,PV,RT之间的关系,放在博客备忘,本文参考了之前在淘宝工作时候的一些资料。 QPS是什么? QPS:单个...

qianghong000
2017/11/07
0
0
Jboss调优——最佳线程数

在设置jboss的参数中,maxThreads(最大线程数)和acceptCount(最大等待线程数)是两个非常重要的指标,直接影响到程序的QPS。本文讲解jboss连接的运行原理,以及如何设置这两个参数。 最佳...

yzbty23
2015/10/23
60
0
多核CPU开几个线程最好

影响最佳线程数的主要因素: 1、IO 2、CPU 根据公式:服务器端最佳线程数量=((线程等待时间+线程cpu时间)/线程cpu时间) * cpu数量 一般来说是IO和CPU。IO开销较多的应用其CPU线程等待时间会比...

鼎六智能
2016/11/04
7
0
tomcat的最大线程数、最大排队数多少合适

tomcat 的Connector配置如下 <</span>Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxThreads="800" acceptCount="1000"/> 其中最后两个参数......

分流砥柱
2015/10/15
722
0

没有更多内容

加载失败,请刷新页面

加载更多

LTS

长期技术支持 Long-Term Support,长期技术支持(版本)。Ubuntu Long Term Support:Ubuntu 长期技术支持版(三年),一般的版本支持为18个月。注意,这里的T是term而不是time。Ubuntu的母公...

嘿嘿嘿IT
17分钟前
2
0
SpringSecurity的基本原理

SpringSecurity的基本原理

chendom
18分钟前
1
0
完美解决tomcat启动速度相当慢 快死的状态了

先粘一下日志 ---- Started Application in 3319.145 seconds (JVM running for 3324.59) 3319.145 seconds 多么感人的时间,快一个小时了 重新编译神马的操作根本没有效果,最后看了一下断点...

jaffreyen
26分钟前
3
0
C/C++可变参数,“## __VA_ARGS__”宏的介绍和使用

下面是C99的方法: 1 #define dgbmsg(fmt,...) printf(fmt,__VA_ARGS__) 代码 #include <stdarg.h>#include <stdio.h>#define LOGSTRINGS(fm, ...) printf(fm,__VA_ARGS__) int main(......

青春无极限
33分钟前
1
0
es6默认参数

es5 要实现默认参数,一般是 在大括号里 写, function calc(x, y) { x = x || 0; y = y || 0; // to do with x, y // return x/y} es6后,直接用语言本身来处理, 写...

东东笔记
35分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部