- 浏览: 101111 次
- 性别:
- 来自: 杭州
最新评论
-
damonbird:
这套思路有对应的实现吗?
基于组件的开发思路 -
blackproof:
你好,age后边的两个数,是啥意思Desired surviv ...
性能监控/优化系列——JVM监控/调优 -
辛星0913:
vim编程常用命令 -
leexiaodong2009:
请问要怎么样才可以在web项目中用,比如tomcat里面配置了 ...
用JVM工具接口创建调试和分析代理
文章列表
1. 微笑练习, 3秒钟陌生人游戏, 意志力练习.
2. 专注于自我的价值,自信的力量以及真诚的人生态度.
3. 微笑, 积极, 主动, 勇敢, 临危不乱, 淡定.
4. 价值: 存在感, 影响他人.
5. 团队需要积极的氛围, 你需要去带动影响他人.
6. 多总结和自省.
7. 几种积极心态: 决心, 渴望, 主动, 热情, 爱心, 学习, 自信, 顽强, 自律, 勇气, 意志力,信任, 进取心.
8. 努力追求你想要的生活; 有渴望更要有行动; 不要做"独行侠", 要充分利用团队的力量; 有问题才有机会, 不要逃避.
9. 自我审视是一种自我的超越, ...
1. 4个基本特性:组件,组件之间的协同,组件插座,组件的使用者。
2. 高度的以体系结构为中心。
3. 业务组件5要素:组件粒度层次、体系结构视点、分布层、功能类(或层)和开发生命周期视点。
4. 五种粒度层次:语言 ...
1. 清单: 你的N各目标,需要完成事情/心愿,内心最渴望事物(一份清单让你明白自己真正渴望的东西,快去找到你的100和40)。
2. 不要作单枪匹马的“独行侠”, 强调团队合作,利用你的关键性关系。
3. 最大的快乐不是地位,金钱,名誉,而是感恩和给与(我可以帮你吗?我会帮助你的)。
4. 如果你帮助他人得到他们想得到的东西,那么你肯定也会得到你想要的东西。
5. 勇敢的迈出第一步,去做你想做的事情。
6. 当你要实现一个目标时,一定要考虑你的关键性关系的力量。
7. 主动伸手和再联系你的关键性朋友。和他们吃吃饭,一起娱乐,多一些交互。把精力放在关键性关系上面。
8. 尽力去帮 ...
下面的配置项可能因不同的容器有不一样,但是基本原理是差不多的
1. Thread Pool,调优WEB容器线程池比较好的实践是首先根据基本原则设置初始化配置(下图),然后在压力环境下观察并做适当修改。
2. 对于那些重IO(exa ...
1. 常见的内存泄露有adding entries to a Java Collection and never removing them are a common source of memory leaks。
2. 对于IO应用的调优, 为了减低CPU utilization, 一个常用的方法是buffer 输入和输出数据,减少交互次数。
3. 任何一次网络IO的调用最终会导致一个OS的系统调用,会消耗system CPU utilization,因此可以尽量选择NIO的方式。
4. Java NIO nonblocking data structures allow for ...
JVM监控
1. ParNew表示CMS收集器在新生代采用多线程进行垃圾回收。DefNew表示顺序垃圾收集器在新生代采用单线程进行垃圾回收。
2.系统做完CMS cycle后,观察minorGC的日志,如果日志中发现CMS收集前后的heap占用下降不明显,那要么是已有的对象太少,以至于找到的unreachable对象很少,这样浪费费CPU;要么是对象从新生代提拔到老生代的速率超过了CMS所能承受的范围。总之,出现以上情况表示需要进行性能调优。
3. -XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled,PermGen ...
1. HotSpot JVM在进化的过程中所做的优化:JIT compilers,sophisticated garbage collectors,JVM runtime environment。
2. HotSpot VM:三个主要组件:VM Runtime, JIT compiler, Memory manager(Garbage Collector)。后两种都为前者的插件,runtime提供了一些调用插件逻辑的接口,既然是插件,那么必然会有很多选择,因此在配制JVM的时候可以通过参数的形式指定它们,如垃圾回收就有很多实现方式。
3. JIT(字节码—>机器指令) 针对较常被 ...
Network I/O相关
1. 在分布式系统中会比较容易发现network bandwidth or network I/O方面的性能。
2. 如果系统的网络接口发送的数据大于网络硬件所能处理的值,那么数据就会被缓存到OS的buffer中,造成系统的延时。
3. netstat命令有局 ...
1. 内存的分页(paging)、交换(swapping)、锁和线程的上下文切换(分为voluntary and involuntary context switching)需要监控。两种上下文的区别:voluntary ——voluntarily takes itself off the CPU;involuntary ——占用时间期满或优先级更高的线程取代。
2. 如果一个java程序或JVM在发生内存交换(swapping)表明有性能问题需要关注。
3. 当发现JVM的垃圾回收时间很长时,很可能是内存不足发生swapping。如果JVM运行在内存不足的机器上,它的内存堆可能会被交 ...
CPU相关
1. 从下向上定位
1.1 CUP监控(指令执行速度-单位时间内执行的指令条数, CUP缓存的miss率)
1.2 OS的监控
1.3 JVM的监控
工具:Intel VTune or AMD’s CodeAnalyst Performance Analyzer(window/linux)
选择正确的CPU架构和平台系统很重要,确认应用是否正运行在一个正确的CPU和系统架构上(涉及multiple cores per CPU and multiple hardware threads per core),每个 ...
卡耐基的哲学--笔记
1.1 能设身处地为他人着想,了解别人心里想些什么的人,永远不用担心未来.
1.2 激发他人的需求,人都是为自己的需要而活.
1.3 要首先引起别人的渴望,凡 ...
注:cmake需要手动安装,一般操作系统中不自带。
The sequence for installation from a compressed tar file or Zip
archive source distribution is similar to the process for
installing from a generic binary distribution (see Section 2.2,
"Installing MySQL from Generic Binaries on Unix/Linux"), except
th ...
用JVM工具接口创建调试和分析代理
引自:http://www.zhujiangroad.com/html/soft/s2395.html
Java 虚拟机工具接口(Java Virtual Machine Tool Interface,JVMTI)提供了一种编程接口,允许软件开发人员创建软件代理以监视和控制 Java 编程语言应用程序。JVMTI 是 Java 2 Software Development Kit (SDK), Standard Edition, 版本 1.5.0 中的一种新增功能。它取代了 Java Virtual Machine ...
以下内容,转载自http://developers.sun.com.cn/blog/yutoujava/
Java的应用有时候会因为各种原因Crash,这时候会产生一个类似java_errorpid.log的错误日志。可以拿到了
这个日志,怎样分析Crash的原因呢?下面我们来详细讨论如何分析java_errorpi ...
原文:http://blog.csdn.net/gobitan/article/details/5644151
Linux平台下的core file分析
胡家辉 2010-05-06
第一步:找到core file是由哪个程序产生的
[root@app10 dennis]# file core.11751
core.11751: ELF 64-bit LSB core file AMD x86-64, version 1 (SYSV), SVR4-style, from 'java'
[root@app10 dennis]#
从上面可以看出,该core file是由java ...