JRebel运行缓慢或提示内存不足的解决方法

原文出处:  JRebel运行缓慢或提示内存不足的解决方法
作者: Jet Mah from  Java堂
声明:  可以非商业性任意转载, 转载时请务必以超链接形式标明文章原始出处、作者信息及此声明!


JRebel是一个Java类热启动的工具,使Java开发(特别是Web开发)可以实现像PHP开发那样即时刷新的效果,这样再也不用修改java文件之后频繁的去重启Web Server了,用起来非常的顺手。

 

最近JRebel好像更新也非常频繁,8月份刚发布3.0版本,11月份就发布了3.5版本,而且这个新版本用下来非常给力,针对了spring增加了许多扩展(默认是打开的),比如可以实时更新所有Spring的配置文件等等,手痒痒的同学可以下载下来试试。BTW,我用的是正式版,:)

 

安装的方法也非常简单,就在vm后面增加一个-noverify 参数:

  1. -noverify -javaagent:E:\UsualTools\JRebel\jrebel.jar

当然还是记得将上面的路径修改成你自己本机JRebl的存放路径。

 

上面的都不是本文的重点,这里需要说一下的就是,或许3.5版本增加的功能特性太多的缘故(特别是针对Spring),刚开始启动的时候速度非常的慢,开始的时候我怀疑是spring插件的问题,于是使用 -Djrebel.spring_plugin=false将spring插件关闭了,之后启动的速度可以接受了,但是运行程序的时候速度非常非常的慢,点一个按钮要等半天。如果不使用JRebel的话程序运行正常,所以排除了程序本身的问题。

 

刚开始一直在怀疑是不是新版本的问题,因为用2.x和3.0的时候都很正常,所以在这方面查了很多资料,都没有发现好的解决办法。后来,无意中发现程序出现了“java.lang.OutOfMemoryError: PermGen space”的错误,突然才想到是否是给JRebel分配的内存太小了,于是使用下面的参数增加了内存:

  1. -noverify -javaagent:E:\UsualTools\JRebel\jrebel.jar -Xmx512M -Xms512M -XX:MaxPermSize=1024m

然后在运行的时候发现速度是非一般的快啊,使用JRebel的spring插件之后启动速度也非常的块了,看来就是这个问题,后来在JRebel官方上的Q&A上面也得到了印证。

 

需要说明一点的是,如果上面的参数无法启动,需要将内存数设置小一些;还有,增加Eclipse的内存对JRebl是没有任何效果的,虽然现在想起来和可笑,但是当时在这个方面也浪费了不少时间。BTW,Eclipse3.3+内置了一个内存查看的工具,可以在“Windows”-”Preferences”中,选择左边的”General”,然后选择右边的”Show heap status”。

 

 

参考资料:
I’m getting Java.lang.OutOfMemoryError: PermGen space!??
Javarebel启动程序java.lang.OutOfMemoryError: PermGen space问题的解决

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值