Welcome 微信登录

首页 / 软件开发 / JAVA

JVM调优总结(七)-典型配置举例1

JVM调优总结(七)-典型配置举例1

JVM调优总结(七)-典型配置举例12012-06-15 ITEYE 和你在一起以下配置主要针对分代垃圾回收算法而言。堆大小设置年轻代的设置很关键JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存 限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最 大可设置为147...
JVM调优总结(八)-典型配置举例2

JVM调优总结(八)-典型配置举例2

JVM调优总结(八)-典型配置举例22012-06-16 iteye 和你在一起常见配置汇总堆设置-Xms:初始堆大小-Xmx:最大堆大小-XX:NewSize=n:设置年轻代大小-XX:NewRatio=n:设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4-XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两个。如:3,表示Eden:Sur...
JVM调优总结(九)-新一代的垃圾回收算法

JVM调优总结(九)-新一代的垃圾回收算法

JVM调优总结(九)-新一代的垃圾回收算法2012-06-16 iteye 和你在一起垃圾回收的瓶颈传统分代垃圾回收方式,已经在一定程度上把垃圾回收给应用带来的负担降到了最小,把应用的吞吐量推到了一个极限。但是他无法解 决的一个问题,就是Full GC所带来的应用暂停。在一些对实时性要求很高的应用场景下,GC暂停所带来的请求堆积和请求失败是无法接受 的。这类应用可能要求请求的返回时间在几百甚至几十毫秒以内,如果分代垃圾回收方式要达到这个指标,只能把最大堆的...
JVM调优总结(十)-调优方法

JVM调优总结(十)-调优方法

JVM调优总结(十)-调优方法2012-06-19 iteye 和你在一起JVM调优工具Jconsole,jProfile,VisualVMJconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。详细说明参考这里JProfiler:商业软件,需要付费。功能强大。详细说明参考这里VisualVM:JDK自带,功能强大,与JProfiler类似。推荐。如何调优观察内存释放情况、集合类检查、对象树上面这些调...
JVM调优总结(十一)-反思

JVM调优总结(十一)-反思

JVM调优总结(十一)-反思2012-06-19 iteye 和你在一起垃圾回收的悖论所谓“成也萧何败萧何”。Java的垃圾回收确实带来了很多好处,为开发带来了便利。但是在一些高性能、高并发的情况下,垃圾回收 确成为了制约Java应用的瓶颈。目前JDK的垃圾回收算法,始终无法解决垃圾回收时的暂停问题,因为这个暂停严重影响了程序的相应时间 ,造成拥塞或堆积。这也是后续JDK增加G1算法的一个重要原因。当然,上面是从技术角度出发解决垃圾...
Java多线程基础总结一: synchronized(1)

Java多线程基础总结一: synchronized(1)

Java多线程基础总结一: synchronized(1)2012-06-21 iteye ftj20003最近写关于并发的小应用,才发现真的该好好的正视java的多线程了。之前没有深入的掌握,用起来也是那么的吃力。作为J2SE里面为 数不多的重要难点之一,多线程应用一直是我以敬畏的心态去尽量避开的,只是通过一些实例掌握一些简单的应用。这段时间会多用点时间 去掌握,有需要写下来的我也会通过这种方式既分享又加深理解。首先这篇只涉及基础的知识整理,对于并发包j...
Java多线程基础总结二: Thread

Java多线程基础总结二: Thread

Java多线程基础总结二: Thread2012-06-21 iteye ftj20003对于Thread来说只想说两个方法,一个是setDaemon(false|true),另一个是join()。首先说说守护线程,这么东西是干什么用的?对于 Java应用我们都知道main方法是入口,它的运行代表着主线程开始工作了,我们也知道JVM里面有垃圾回收器的存在使得我们放心让main飞 奔,然而这背后的故事是垃圾回收线程作为守护着主线程的守护线程默默的付出着。很像...
Java多线程基础总结三: volatile

Java多线程基础总结三: volatile

Java多线程基础总结三: volatile2012-06-21 iteye ftj20003前面的两篇总结简单的说明了同步的一些问题,在使用基础的同步机制中还有两个可以分享的技术:volatile关键字和ThreadLocal。合 理的根据场景利用这些技术,可以有效的提高并发的性能,下面尝试结合自己的理解叙述这部分的内容,应该会有理解的偏差,我也会尽量 的在完善自己理解的同时同步更新文章的错误。或许在知道synchronized配和对象内部锁的机制以后,...
Java多线程基础总结四:ThreadLocal

Java多线程基础总结四:ThreadLocal

Java多线程基础总结四:ThreadLocal2012-06-23 iteye ftj20003说到ThreadLocal,首先说说这个类的命名。直观上看好像是个Thread的什么亲戚,但其实它想表达的意思是线程本地变量,也就是说每 个线程自己的变量。它作为一个JDK5以后支持范型的类,主要是想利用范型把非线程安全的共享变量,封装成绑定线程的安全不共享变量。 这样的解释我想我们多半能猜出它的实现思路:把一个共享变量在每个线程使用时,初始化一个副本,并且和...
Java多线程基础总结五:atomic

Java多线程基础总结五:atomic

Java多线程基础总结五:atomic2012-06-23 iteye ftj20003在简单介绍java.util.concurrent.atomic包之前,有个概念要先抄袭熟悉一遍:CAS(比较并交换)。现在大多数的处理器都提供对并发 访问的支持,这个支持的反映方式就是提供硬件的指令支持多处理的特殊需求。比如检测或者阻止其它处理器的并发访问来更新共享变量的 指令。对于 Intel x86架构的处理器来说就是通过提供实现CAS或者比较并设置的硬件原语指令...
Java多线程基础总结七:ReentrantLock

Java多线程基础总结七:ReentrantLock

Java多线程基础总结七:ReentrantLock2012-06-25 iteye ftj20003之前总结了部分无锁机制的多线程基础,理想的状态当然是利用无锁同步解决多线程程序设计的问题。但是实际碰到的问题使得很多情 况下,我们不得不借助锁同步来保证线程安全。自从JDK5开始,有两种机制来屏蔽代码块在并行访问的干扰,synchronized关键字已经介绍 过了部分内容,所以这次简单的说说另一种锁机制:ReentrantLock。对于synchroniz...
Java多线程基础总结八:ReentrantReadWriteLock

Java多线程基础总结八:ReentrantReadWriteLock

Java多线程基础总结八:ReentrantReadWriteLock2012-06-25 iteye ftj20003说到ReentrantReadWriteLock,首先要做的是与ReentrantLock划清界限。它和后者都是单独的实现,彼此之间没有继承或实现的关系。 然后就是总结这个锁机制的特性了:(a).重入方面其内部的WriteLock可以获取ReadLock,但是反过来ReadLock想要获得WriteLock则永远都不要想。(b).Writ...
Java多线程基础总结九:Mina窥探(1)

Java多线程基础总结九:Mina窥探(1)

Java多线程基础总结九:Mina窥探(1)2012-06-25 iteye ftj20003一直以来的多线程的基础总结都是脱离应用的,但是要说多线程的应用就不能不说Mina。Apache Mina作为一个高性能的Java异步并发网 络通讯框架,其内部的多线程的设计和实现可谓是学习多线程的良药。手上的Mina源码是svn剪下来的最新的代码,mvn转化成eclipse项目 后导入mina-core的源码看看多线程的应用吧。首先简单的介绍在org.apache...
Tomcat系统架构与设计模式,第1部分: 工作原理

Tomcat系统架构与设计模式,第1部分: 工作原理

Tomcat系统架构与设计模式,第1部分: 工作原理2012-06-27 IBM 许令波本文以 Tomcat 5 为基础,也兼顾最新的 Tomcat 6 和 Tomcat 4。Tomcat 的基本设计思路和架构是具有一定连续性的。Tomcat 总体结构Tomcat 的结构很复杂,但是 Tomcat 也非常的模块化,找到了 Tomcat 最核心的模块,您就抓住了 Tomcat 的“七寸”。下面是 Tomcat 的总体结构图:图 1.T...
Tomcat系统架构与设计模式,第2部分: 设计模式分析

Tomcat系统架构与设计模式,第2部分: 设计模式分析

Tomcat系统架构与设计模式,第2部分: 设计模式分析2012-06-27 IBM 门面设计模式门面设计模式在 Tomcat 中有多处使用,在 Request 和 Response 对象封装中、Standard Wrapper 到 ServletConfig 封装中、ApplicationContext 到 ServletContext 封装中等都用到了这种设计模式。门面设计模式的原理这么多场合都用到了这种设计模式,那这种设计模式究竟能有什么作用呢?顾名...
使用JavaServer Faces构建Apache Geronimo应用程序,第1部分

使用JavaServer Faces构建Apache Geronimo应用程序,第1部分

使用JavaServer Faces构建Apache Geronimo应用程序,第1部分2012-06-29 IBM Chris Herborth使用 Eclipse 和 Apache MyFaces Core 构建基本的应用程序开始之前本教程向 Java 程序员介绍如何使用 JSF 组件来构建具有高度交互性的部署在 Apache Geronimo 上的 Java EE 应用程序。本教程假定 读者使用 Eclipse 集成开发环境(IDE)作为开发平台。关...
<< 551 552 553 554 555 556 557 558 559 560 >>