- 浏览: 460960 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (369)
- javascript html (20)
- java (31)
- jquery (15)
- jcrop (0)
- JEECG (1)
- ajax (3)
- 反射 (3)
- VI (1)
- mysql (48)
- easyui (1)
- svn (2)
- MD5 加密 (1)
- spring (14)
- ORACLE (8)
- 经验总结 (1)
- TCP/IP协议 (1)
- ICMP协议 (1)
- eclipse (1)
- Reflect (1)
- linux (21)
- android (5)
- excel 操作 (1)
- java tree (1)
- html (1)
- plupload (1)
- mongodb (9)
- aes (1)
- python (1)
- java relax (1)
- highcharts (2)
- json (2)
- java 多线程 (30)
- maven (2)
- 设计模式 (1)
- jsp+js (2)
- 面向对象 (1)
- jvm (16)
- 缓存 (1)
- proxy (1)
- 聊侃 (1)
- 面经 (1)
- java 字节 (1)
- java 类加载器 (2)
- java 基础 (2)
- java 语法糖 (1)
- java 位运算 (1)
- 排序 (3)
- java 服务器性能优化 (19)
- 网络编程 (2)
- jvm 参数设置 (0)
- jersey (1)
- webservice (2)
- nginx+多tomcat 集成 (5)
- nginx (16)
- squid (3)
- memcached (5)
- 正则表达式 (1)
- 常用免费接口 (1)
- jpa (1)
- win7 (1)
- java处理大文件 (1)
- js正则表达式 (1)
- tomcat (1)
- java 敏感字 (1)
- 系统架构优化 (4)
- 学习 (1)
- 本地测试QQ微博第三方登陆 (1)
- java 错误 (1)
- 微信支付 (1)
- https (1)
- httpclient (1)
- awk (2)
- loadrunner (1)
- sql server 2008 (3)
- git (4)
- sql server2008 (1)
- solr (2)
- centos (1)
- 数据存储架构 (3)
- log4j (1)
- weboffice (1)
- 并发编程 (1)
- postgreSQL (0)
- ssl (1)
- openssl (1)
- activeMQ (2)
- IDEA (1)
- shell (1)
- ansible (4)
- docker (2)
- grafana (1)
- jmeter (1)
- TLS (1)
- 将博客搬至CSDN (1)
最新评论
-
dida1990:
啊喔,过去了这么久,不过还是评一个。谁说uuid的hashCo ...
高并发生成订单号(二) -
annan211:
yclovesun 写道使用了uuid,为什么还要machin ...
高并发生成订单号(二) -
yclovesun:
使用了uuid,为什么还要machineId?uuid已经可以 ...
高并发生成订单号(二) -
u013280917:
太深奥,看不懂
mysql优化特定类型的查询
线程池合理的长度取决于将要提交的任务类型和所部署系统的特征。
为了正确的定制线程池的长度,你需要理解你的计算环境、资源预算和任务的自身特性。部署系统中安装了多少个CPU?多少内存?任务主要执行的是计算、I/O还是一些混合操作?它们是否需要像JDBC Connection这样的稀缺资源?如果你有不同类别的任务,它们拥有差别很大的行为,那么应该考虑使用多个不同的线程池,这样每个线程池可以根据不同任务的工作负载进行调节。
对于计算密集型的任务,一个有Ncpu 个处理器的系统通常通过使用一个Ncpu +1个线程的线程池来获得最优的利用率(计算密集型的线程恰好在某时因为发生一个页错误或者因为其他原因而暂停,刚好有一个“额外”的线程,可以确保在这样的情况下CPU周期不会中断工作)。对于包含了I/O和其他阻塞操作的任务,不是所有的线程都会在所有的时间被调度,因此你需要一个更大的池。为了正确地设置线程池的长度,你必须估算出任务花在等待的时间与用来计算的时间的比率;这个估算值不必十分精确,而且可以通过一些监控工具获得。你还可以选择另一种方法来调节线程池的大小,在一个基准负载下,使用不同大小的线程池运行你的应用程序,并观察CPU利用率的水平。
线程池大小 对于系统运行效率来说至关重要,我们可以给出一个估算线程池大小的经验公式。
Ncpu = CPU的数量 Ucpu = 目标CPU的使用率(0<=Ucpu<=1) W/C = 等待时间与计算时间的比率 为保持处理器达到期望的使用率,最优的线程池的大小等于 NThreads = Ncpu * Ucpu *(1+W/C) 可以通过 Runtime.getRuntime().availableProcessors(); 获取CPU的数量。
发表评论
-
Java高效读取大文件
2015-01-22 19:45 6231、概述 本教程将演示如何用Java高效地读取大文件。 ... -
winSCP 服务器 在线联网
2015-01-09 18:05 7071 新建 bb.bat 文件 里面是你的服务器 列表 ... -
JDK 命令行工具
2014-10-22 14:47 801JDK 命令行工具 实现在tools.jar文件 ... -
windows 监控工具
2014-10-22 11:23 5341 windows 监控工具 运行-perfmon ... -
Amino 框架简介
2014-10-17 11:30 1426对数据加锁是实现多线程的一种策略,但是加锁无疑会增加系 ... -
Java 重入锁(ReentrantLock)和内部锁(synchronized)
2014-10-16 15:44 1594ReentrantLock 和 synchronize的 ... -
Java 锁分离
2014-10-16 15:35 1332读写锁思想的延伸就是锁分离。读写锁根据读写操作功能上 ... -
java 高性能运算-- 双端队列
2014-10-15 16:04 1045JDK 1.6中 提供了一种双端队列,简称 Dequ ... -
java 高性能运算--并发队列
2014-10-15 15:33 2489JDK 提供了两套并发队列的实现,一个是以 Conc ... -
java 高性能运算--展开循环
2014-10-14 15:43 1221可以优化的地方实在是太多了,只要你愿意去想,去尝试。代码 ... -
java 高性能运算--switch 替代方案
2014-10-14 15:24 1639Java 原生的语法糖中存在很多种 易于阅读,效率略低的 ... -
java 高性能运算--位运算代替乘除法
2014-10-14 15:03 3951位运算 是公认的 高效运算,在高频计算中,可以使用位运算 ... -
Java 中的弱引用
2014-10-14 14:31 557简单一点说,我们建议使用 WeakHashMap 在系 ... -
Stirng 字符串 原生方法 charAt 与 startWith
2014-10-11 11:23 759charAt(int index) 与 startWit ... -
比 StringTokenizer 更加优化的字符串分割
2014-10-11 11:05 1091上篇文中说到,StringTokenizer 是相对比较 ... -
Java 分割字符串 StringTokenizer
2014-10-10 19:15 698字符分割 jdk建议使用 split或者 正则表达式,但是追求 ... -
String 类的一点认识
2014-10-10 18:52 789String 是Java中相当强大的类,虽不属于基本类型 ... -
java 负载均衡
2014-10-09 19:10 952负载均衡的概念比较广。 具体可参见 http ...
相关推荐
排列组合---java如何进行排列组合运算---包含完整代码,适合使用java代码学习排列组合。
1. 编写一个类实现复数的运算。 复数类ComplexNumber的属性: m_dRealPart:实部,代表复数的实数部分。 m_dImaginPart:虚部,代表复数的虚数部分。 复数类ComplexNumber的方法: ComplexNumber():构造函数,...
有关CUDA介绍的简单文档。 适合于编写CUDA论文和做PPT的一些资源
用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历,...
4. **线程池的创建与管理**:了解如何使用特定编程语言(如C++、Java等)提供的线程池API,设置线程池大小,提交任务,以及如何优雅地关闭线程池。 5. **性能优化**:分析多线程和线程池对程序性能的影响,包括CPU...
java郑java02-数据类型与运算.rar
- 运算性能:哪种算法执行效率更高。 - 内存分配:程序运行时需要多少内存才能达到最佳效率。 - 启动时间:程序启动所需的时间。 - 可伸缩性:在高用户负载下的程序表现。 - 用户感知:用户如何评估程序性能。 ...
Java语言是目前广泛应用的编程语言之一,其丰富的特性和强大的功能深受程序员喜爱。在学习Java的过程中,...运算符-移位运算-逻辑运算.avi`这个视频教程,你将能更深入地理解这些主题,并能够灵活应用到自己的项目中。
大整数的四则运算----高质量C语言程序.doc
《GPU高性能运算之CUDA》是张舒撰写的一本关于GPU并行计算的专著,主要讲解如何利用CUDA技术实现GPU的高效计算。CUDA是NVIDIA公司推出的一种编程模型,允许开发者使用C、C++或者Fortran等语言直接编程,充分利用GPU...
首先,"JAVA高性能"是指Java平台在处理大量请求和运算时,能够保持高效运行的能力。这主要得益于JVM(Java虚拟机)的优化,包括垃圾回收机制、多线程支持和Just-In-Time(JIT)编译器等。JIT编译器能够在运行时将...
在IT领域,量化是一种重要的数据处理技术,特别是在信号处理、图像处理和数字通信中。Lloyd-Max量化是其中一种高效的量化算法,它基于最大均方误差(MSE)最小化的原则来设计量化器,从而在有限的表示精度下尽可能...
Java数学库Apache Commons Math 3.5是Java开发者在处理各种数学和统计计算时的一个强大工具。这个库提供了大量的类和方法,支持广泛的数学运算,包括线性代数、随机数生成、概率统计、最优化问题、特殊函数等。下面...
### Java线程池详解 #### 一、线程与线程池的概念 在Java中,线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。一个进程(例如某个Java应用)至少有一个线程,如果线程...
java 精确的浮点数运算java 精确的浮点数运算java 精确的浮点数运算 java 精确的浮点数运算java 精确的浮点数运算java 精确的浮点数运算 java 精确的浮点数运算java 精确的浮点数运算java 精确的浮点数运算 java ...
北京动力节点-Java编程零基础教程-067-Java基本语法-数据类型转换-大小容量数据混合运算.avi 北京动力节点-Java编程零基础教程-068-Java基本语法-数据类型转换-int向byte、short、char型变量赋值.avi 北京动力...
在Java中,位运算对于理解计算机底层工作原理、优化代码性能以及在某些特定场景下(如位掩码)非常有用。今天我们将深入探讨Java中的数据类型和位运算。 首先,我们来看Java中的数据类型。Java数据类型分为两大类:...
本文旨在通过对C#和Java进行对比研究,特别是针对其可移植性和运算速度,帮助读者更深入地理解这两种语言的特点,并通过矩阵相乘这一具体任务来量化评估它们的性能表现。 #### 可移植性 - **Java**:Java语言以其...
在《实战Java虚拟机——JVM故障诊断与性能优化》一书中,作者深入探讨了如何对JVM进行故障排查和性能调优,通过源码分析来帮助读者理解其内部工作原理。下面我们将根据书中的主题,详细阐述相关的知识点。 1. **JVM...
在Java编程语言中,二进制运算是一种基础且重要的概念,尤其对于计算机科学的理解和算法设计至关重要。二进制运算器通常是指一个程序或工具,它能够执行针对二进制数的基本算术运算,如加法、减法、乘法和除法。在这...