我在Sun的JRE6中运行Tomcat6,每部署两个,我都会收到OutOfMemoryException:PermGen。我已经完成了对PermGen解决方案的搜索,并尝试了许多修复程序。没有工作。我读了很多有关Oracle
JRockit的好东西,以及它的PermGen分配大小(与Sun的128M相比),虽然它不能解决问题,但我可以在PermGen异常之间重新部署100次,相比之下2次现在。
JRockit的问题是在生产中使用它,您需要购买花费数千美元的WebLogic。存在哪些其他(免费)选项更能容忍PermGen的扩展?下面的JVM在该区域中如何工作?
…其他?
更新: 有人问为什么我认为PermGen max是128M。原因是因为任何时候我尝试将其提高到128M以上时,我的JVM都无法初始化:
[2009-06-18 01:39:44] [info] Error occurred during initialization of VM [2009-06-18 01:39:44] [info] Could not reserve enough space for object heap [2009-06-18 01:39:44] [395 javajni.c] [error] CreateJavaVM Failed
奇怪的是,它无法为对象 堆 保留空间,尽管我不确定它是“ the”堆而不是“ a”堆。
我以初始1024MB和最大1536MB的堆启动JVM。
我同意Michael
Borgwardt的观点,即您可以增加PermGen的大小,但我不同意这主要是由于内存泄漏。大量使用Reflection的应用程序会极大地侵蚀PermGen空间。因此,基本上,如果您有一个在Tomcat中运行的Spring
/ Hibernate应用程序,请准备好增加PermGen的空间。
用惰性初始化、私有setter和使用昂贵的方法更改值的能力来实现变量的最佳方法是什么? 用法示例:
我知道一个消费者组中活动消费者的最大数量是一个主题的分区数。 对于处理速度较慢的消费者,最佳做法是什么?如何实现更多的并行性? 例如:一个主题有6个分区,生产者每秒生成数千条消息。所以我在这个群体中最多有6个消费者。考虑到处理这些消息很复杂,而且消费者比生产者慢得多。结果是,消费者总是落后于最后一个补偿,而滞后正在增加。 在传统的MQ系统中,我们只需添加越来越多的使用者以保持最新。 如何使用Kaf
我已经完成了iOS应用程序的开发,想了解我的应用程序在移动端的性能。 是否有一种工具可以衡量前端应用程序以及服务API的性能。
本文向大家介绍5款最佳的免费Linux杀毒软件,包括了5款最佳的免费Linux杀毒软件的使用技巧和注意事项,需要的朋友参考一下 Linux的安全性毋庸置疑。很多Linux新手都这样认为,但是Linux同样也有可能遭受病毒的侵袭。 首先,Linux比其它操作系统更稳定更安全。理论上Linux是有可能被病毒侵害的。但实际上 Linux机器几乎不可能遭受病毒的攻击。这里的问题是为什么要为Linux准备防
问题内容: 该图非常大,但无向。边缘未加权。 在我的实现中,我必须找到最大度数的顶点,并在顶点和边上都删除。 链表?数组列表?地图? 哪种对我的实施更好? 问题答案: 我的建议是将顶点存储在优先级队列中。这样,您可以非常快速地访问最高度的顶点。至于如何实现顶点,我将每个相邻的顶点存储在某种形式的数据结构中,例如HashSet或TreeSet,以便能够有效地删除内容。我不会明确地表示边缘,这不是必需
我用的liunx系统宝塔建的站点,这段我网站的index.php总是被修改,有没有好用的免费防篡改软件,宝塔的防篡改需要购买,客户的小企业站不想出这个钱,所以有哪些比较好用的免费的防篡改工具或软件?