- 浏览: 11680 次
最新评论
文章列表
它跟JDK5的一个新特性有关,对于一些频繁抛出的异常,JDK为了性能会做一个优化,即JIT重新编译后会抛出没有堆栈的异常
而在使用-server模式时,该优化选项是开启的,因此在频繁抛出某个异常一段时间后,该优化开始起作用,即只抛出没有堆栈的异常信息 强制要求JVM始终抛出含堆栈的异常(-XX:-OmitStackTraceInFastThrow)
做个记录
eclipse.ini加上
-XX:+PrintGCTimeStamps
-XX:+PrintGCDetails
-verbose:gc
-Xloggc:gc.log
分析eclipse安装目录下的gc.log
最终配置
-Xmn256m
-Xms512m
-Xmx512m
-XX:PermSize=96m
-XX:MaxPermSize=96m
确实快了很多
java创建异常对象对性能的影响
根本原因在于:
异常基类Throwable.java的public synchronized na性能开销在于:
1. 是一个synchronized方法(主因)
2. 需要填充线程运行堆栈信息tive Throwable fillInStackTrace()方法
如果自定义异常,不需要堆栈信息(貌似我们都要,至少记录一下出错的行数啥的吧),覆盖该方法,对性能会有比较大的提升
参考地址:
http://blog.csdn.net/jojo52013145/article/details/5826296
linux下java抓包常用命令
- 博客分类:
- linux
jps -lm 查看java进程
netstat -ntpl | grep 进程号 查看端口
ifconfig 查看网卡
tcpdump -Xnn -i 网卡 port 端口号 | grep 关键字
本文介绍了命令行下如何查看mysql数据库的当前连接数。
命令: show processlist;
或者 # mysqladmin -uroot -p密码 processlist
如果是root帐号,你能看到所有用户的当前连接。如果是其它普通帐号,只能看到自己占用的连接。
show processlist;只列出前100条,如果想全列出请使用show full processlist;
mysql> show processlist;
命令: show status;
或者 # mysqladmin -uroot -p密码 status
Aborted_clients 由于客户没 ...
apt-get command cheat sheet for Debian Linux
apt-get is the command-line tool for handling packages for Debian Linux which is use to:
Install/manage individual packages
Upgrade packages
Apply security patch(s)
Keep Debian system up to date
Download source .deb files
Front-end to many GUI and other u ...