最新 | 最热门 | 最高评价

+0  常用命令归纳:Linux/Oracle/JVM/Git

Tag: Framework & Tool | Git | JVM | Linux | Oracle
四火 发于 2015年12月07日 14:23 | 点击: 2537 | 展开摘要
经常用到一些命令,还总是忘掉的,就简单列在这里。总是现查也挺麻烦的。

Linux:

top mem consumer: sudo ps -aux | sort -k4nr | head -5 or top, then press M

connection number: netstat -an | grep ESTABLISHED | wc –l

process number: ps -ef | wc -l

threads of a process: p

查看全文: http://www.udpwork.com/item/14829.html

+0  面向GC的Java编程

Tag: Java语言 | GC | Java | JVM
王 晨纯 发于 2014年05月07日 11:24 | 点击: 2668 | 展开摘要
(感谢网友 @Hesey小纯纯 投稿  博客 | 原文链接)

Java程序员在编码过程中通常不需要考虑内存问题,JVM经过高度优化的GC机制大部分情况下都能够很好地处理堆(Heap)的清理问题。以至于许多Java程序员认为,我只需要关心何时创建对象,而回收对象,就交给GC来做吧!甚至有人说,如果在编程过程中频繁考虑内存问题,是一种退化,这些事情应该交给编译器,交给虚拟机来解决。

这话其实也没有太大问题,的确,大部分场景下关心内存、GC的问题,显得有点“杞人忧天”了,高老爷

查看全文: http://www.udpwork.com/item/12219.html

+0  Java 运行参数调整

Tag: Java | JVM
alswl 发于 2014年03月22日 18:31 | 点击: 1841 | 展开摘要
JVM 在线上运行的时候,可以调整一些运行参数,查看参数帮助如下:

运行 java -h 可以看到 Java 运行可调整的参数。
运行 java -X 可以查看 Java 支持的额外参数。
注意一些参数的默认开启在 JDK6 和 JDK7 之间会有差异,甚至在 JDK7 的不同 update
也会有差异,运行 java -XX:+PrintFlagsFinal 查看默认的参数配置。

参考:
Java HotSpot VM Options
The most complete

查看全文: http://www.udpwork.com/item/12005.html

+0  使用堆外内存

Tag: Virtual Machine | JVM | OOM | 内存
四火 发于 2013年07月28日 21:12 | 点击: 2258 | 展开摘要
文章系本人原创,转载请保持完整性并注明出自《四火的唠叨》

有时候对内存进行大对象的读写,会引起JVM长时间的停顿,有时候则是希望最大程度地提高JVM的效率,我们需要自己来管理内存(看起来很像是Java像C++祖宗的妥协吧)。据我所知,很多缓存框架都会使用它,比如我以前使用过的EhCache(给它包装了个酷一点的名字,叫BigMemory),以及现在项目中的Memcached。在nio以前,是没有光明正大的做法的,有一个work around的办法是直接访问Unsafe类。如

查看全文: http://www.udpwork.com/item/10305.html

+0  JVM的GC简介和实例

Tag: 其他 | 性能优化 | gc | java | jvm
昆仑 发于 2013年07月13日 16:32 | 点击: 2146 | 展开摘要
本文是一次内部分享中总结了jvm gc的分类和一些实例, 内容是introduction级别的,供初学人士参考.

成文仓促,难免有些错误,如果有大牛发现,请留言,我一定及时更正,谢谢!

JVM内存布局主要包含下面几个部分:

Java Virtual Machine Stack: 也就是我们常见的局部变量栈,线程私有,保存线程执行的局部变量表、操作栈、动态连接等。

Java Heap:我们最常打交道的内存区域,几乎所有对象的实例都在这个区域分配。所谓的GC基本上也就是跟

查看全文: http://www.udpwork.com/item/10188.html

+0  JVM致命错误日志(hs_err_pid.log)解读

Tag: Virtual Machine | fatal log | JVM
四火 发于 2013年06月27日 10:28 | 点击: 2265 | 展开摘要
文章系本人原创,转载请保持完整性并注明出自《四火的唠叨》

致命错误出现的时候,JVM生成了hs_err_pid<pid>.log这样的文件,其中往往包含了虚拟机崩溃原因的重要信息。因为经常遇到,在这篇文章里,我挑选了一个,并且逐段分析它包含的内容(文件可以在文章最后下载)。默认情况下文件是创建在工作目录下的(如果没权限创建的话JVM会尝试把文件写到/tmp这样的临时目录下面去),当然,文件格式和路径也可以通过参数指定,比如:

java -XX:ErrorFi

查看全文: http://www.udpwork.com/item/10102.html

+0  ARM服务器上装Oracle JVM

Tag: 工作故事 | arm server | java | jvm
RobinDong 发于 2013年03月29日 13:20 | 点击: 2775 | 展开摘要
最近测试arm服务器(装的是ubuntu 12.10)发现一个问题,就是对比测试atom和arm时,跑c语言程序大家性能差不多,跑java程序却相差很远

这是我抄的Montecarlo算法

https://github.com/RobinDong/arm_server/tree/master/MonteCarlo

c和java两种实现,其中c实现在arm上跑需要13秒,在atom上跑需要10秒,相差不多;

但是,如果跑java,arm需要1分40秒,atom只需要12

查看全文: http://www.udpwork.com/item/10050.html

+0  从问题出发看双亲委派

Tag: JVM | classloader | 双亲委派
fp1203 发于 2013年01月14日 16:54 | 点击: 2448 | 展开摘要
同事A问了这样一个问题:

BootstrapClassLoader为什么能够加载用户自定义的类?

当时我想到的是这样的场景:

javaagent设置Boot-Class-Path,或者添加启动参数-Xbootclasspath、-Xbootclasspath/a、-Xbootclasspath/p

这几种方式来初始化修改BootClasspath来达到这个效果。

同事A反应不是这样的场景,于是他给出一个场景:

//example 1:
List list = ne

查看全文: http://www.udpwork.com/item/9088.html

+0  Java内存管理问题案例分享

Tag: concurrent mode failure | full gc频繁 | promotion failed | jvm | Java | java oom
bluedavy 发于 2012年03月16日 17:40 | 点击: 3652 | 展开摘要
在这个slide中分享了Java内存管理常见的三类问题(OOM、Full GC频繁、CMS GC Promotion failed || Concurrent mode failure)的case,以及通常的解决方法。

Java内存管理问题案例分享
View more PowerPoint from BlueDavy

查看全文: http://www.udpwork.com/item/7000.html

+0  ClassLoader与JVM

Tag: JVM | classloader | HotSpot
fp1203 发于 2012年02月10日 09:35 | 点击: 4221 | 展开摘要
一、ClassLoader与HotSpot

对JVM有所了解的人应该知道,类文件的格式是不能违背JVM规范的,而JVM自然会有解析类文件的工具ClassFileParser。

// hotspot/src/share/vm/classfile/classFileParser.hpp
ClassFileParser(ClassFileStream* st) { set_stream(st); }

ClassFileParser由ClassFileStream*构造,其实

查看全文: http://www.udpwork.com/item/6820.html

+0  优化屏障(Optimization barrier)第三讲

Tag: JVM | GCC | JMM | Optimization barrier | RTL
fp1203 发于 2012年01月13日 11:37 | 点击: 3213 | 展开摘要
上一篇 优化屏障(Optimization barrier)第二讲

1. 大胆猜想

上一篇提到了”memory”这个关键字,为什么它能够防止-fschedule-insns优化时做代码重排呢?为什么非得给它取名为屏障呢?

其实我们可以先考究一下asm语句的用法以及Optimization barrier的原型:

// template
asm ( assembler template
: output operands

查看全文: http://www.udpwork.com/item/6696.html

+0  优化屏障(Optimization barrier)第二讲

Tag: JVM | GCC | JMM | Optimization barrier
fp1203 发于 2012年01月11日 11:39 | 点击: 4056 | 展开摘要
上一篇 优化屏障(Optimization barrier)第一讲

1. gcc编译的大致过程

可以看到,gcc优化主要分两大部分:Tree优化和RTL(Register Transfer Language)优化;

前文所说的指令调度(Instruction scheduling)即为RTL优化的一部分。

2. 从RTL指令调度出发,追寻Optimization barrier的踪迹

还是从实验出发,实验代码如下:

volatile int ready;
int

查看全文: http://www.udpwork.com/item/6683.html
|<<<1234>>>| 一共4页, 43条记录