`
youyu4
  • 浏览: 441895 次
社区版块
存档分类
最新评论
文章列表
  http://www.jb51.net/article/92427.htm
MySQL集群 -- NDB Cluster   MySQL集群的表使用的引擎是ndbcluster,简称ndb。 它的意思是: "网络数据库".NDB(也叫NDB Cluster或者NDBCLUSTER),使用它才能让MySQL支持集群。   要想获得MySQL Cluster 的功能,必须安装 mysql-server 和 mysql-m ...

JVM之其他情况

JVM之其他情况   JVM优化时遇到的场景   场景一       一些应用分配了一些少量的非常大的长时间存活的对象。这样的场景需要需要young代的空间比old代更大。     场景二       一些应用会经历很少的对象转移。这样的场景可能需要old代的空间远远大于存活对象的大小,由于old的占用量增长率很小。     场景三       一些应用有小延迟需求,会使用CMS垃圾回收器,而且使用小young代空间(以致于MinorGC时间更短),以及大的old代空间。在这种配置下,对象会快速的从young代移动到old代,替代了高效老化对象。另外,CMS垃圾回收 ...
JVM之优化吞吐量   对年轻代进行优化   优化吞吐量的目的其实是尽量少的Full GC ,或者尽量避免Full GC,有以下方法可以尽量减少Full GC:   增大Eden:你可以让eden空间更大,可以减少MinorGC的次数。我知道当对象的任期或者岁数达到一定值的时候就会移动到old代,而这个任期就是对象经历MinorGC的次数,MinorGC的次数越少,对象任期增长越慢,就有可能被MinorGC回收掉,而不是进入old代。 增大年轻代:这样同样能减少Minor GC 的频率,减慢对象进入老年代。 增大任期阈值:同样是延长对象在年轻代的停留时间,达到减少对象进入老年 ...
JVM之优化延迟或响应时间(CMS垃圾回收器)   CMS有几个注意点   对象从young代转移到old代的转移率 CMS重新分配内存的概率 CMS回收对象时候产生的old代的分隔,这个会在可获得的对象中间产生一些空隙,从而导致了分隔空 ...
JVM之优化延迟或响应时间   优化标准   在优化延迟的时候,其实就是要调整堆大小,年轻代大小,让GC的时间和频率达到要求。下面是几个优化时需要参考的标准:   Minor GC的时间 Minor GC的频率 Full GC的时间 Full GC的频率     优化年轻代大小          当测试垃圾回收数据的时候,发现MinorGC的时间太长了,正确的做法就是减少young代的空间大小。如果MinorGC太频繁了就增加young代的空间大小。   看看下面例子是怎么优化年轻代:  上图是一个展示了MinorGC的例子,这个例子是运行在如下的Hot ...
JVM之决定堆大小以及内存占用         首先需要判断出应用存活的数据的大小,存活数据的大小是决定配置应用需要的Java堆大小的重要条件,也能够决定是否需要重新审视一下应用的内存需求或者修改应用程序以满足内存需 ...
JVM之优化(GC优化基础)         本节主要描述关于垃圾回收器性能的三个指标,三个关于垃圾回收器优化的基本原则,以及优化HotSpot VM的垃圾回收器的信息收集,在这些指标中权衡以及信息的收集是非常重要的。       性能指标   吞吐量:衡量垃圾回收器运行在性能峰值的时候不需要关心垃圾回收器暂停的时间或者需要占用内存的能力。 延迟:衡量垃圾回收器最小化甚至消灭由垃圾回收器引起的暂停时间和应用抖动的能力。 内存占用:衡量为了高效的运行,垃圾回收器需要的内存。         一项指标的提升,往往需要牺牲其他一项或者两项指标。换一句话说,一项指标的妥协通常 ...
JVM之优化(部署模型和Runtime)   选择JVM部署模型         JVM部署模型的选择总体来说就是决定应用是部署在单个JVM实例还是多个JVM实例上(这里简单举例说明一下JVM实例,比如:我们常用eclipse开发,启动一个eclipse就是启动了一个JVM实例,然后在JVM中运行一个main程序,又会启动一个JVM实例,两个JVM实例是隔离开的)。哪一个是最适合你的应用的呢?这个是前面说到系统需求和潜在规则来决定的。比如说:假如你要部署您的应用在一个64位的机器上面,可以支持更大Java堆,如果应用依赖第三方的本地代码组件,而且这个第三方暂时不支持64位机器,那么你 ...
JVM之优化(概述)          现代JVM是一个具有灵活适应各种应用能力的软件,尽管很多应用能够在JVM的默认配置下运行良好,但是有些应用还是需要优化JVM配置以达到其性能要求。由于各种各样的应用能够运行在现在JVM上面 ...

JVM之监控JVM

JVM之监控JVM   JVM常用的调忧工具   Jconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。 JProfiler:商业软件,需要付费。功能强大。 VisualVM:JDK自带,功能强大,与JProfiler类似。推荐。     监控工具主要分析下面内容   堆监控 线程监控 热点分析 生成快照及分析     堆监控   堆信息查看
JVM之G1垃圾回收器   G1垃圾收集器采用的是区域化、分布式的垃圾回收器。堆被划分成 许多个连续的区域(region)。每个区域大小相等,在1M~32M之间。JVM最多支持2000个区域,可推算G1能支持的最大内存为2000*32M=62.5G。区域(region)的 ...
JVM之CMS垃圾回收器   CMS(Concurrent Mark-Sweep)是以牺牲吞吐量为代价来获得最短回收停顿时间的垃圾回收器。对于要求服务器响应速度的应用上,这种垃圾回收器非常适合。在启动JVM参数加上-XX:+UseConcMarkSweepGC ,这个参数表示对于老年代的回收采用CMS。   CMS采用的基础算法是:标记—清除。       CMS垃圾回收的过程   初始标记(STW initial mark) 并发标记(Concurrent marking) 并发预清理(Concurrent precleaning) 重新标记(STW remar ...
JVM之垃圾回收器   垃圾回收器总共分四大类   串行垃圾回收器(Serial Garbage Collector) Serial(年轻代):复制算法,单线程 Serial Old(老年代):标记 - 整理算法,单线程   并行垃圾回收器(Parallel Garbage Collector) paral ...
JVM之垃圾回收遇到的问题   怎么判断对象可以被回收   根搜索算法    在主流的商用程序语言中(java和c#),都是使用根搜索算法(GC Roots Tracing)判断对象是否存活的。这个算法的基本思路就是通过一系列的名为“GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链(Reference Chain),当一个对象到GC Roots没有任何引用链相连(用图论的话来说就是从GC Roots到这个对象不可达)时,则证明此对象是不可用的。   java中可以作为GC Root的对象   虚拟机栈(栈帧中的本地变量表)中的引用对 ...
Global site tag (gtag.js) - Google Analytics