|
|
1
8
对于服务器端Java应用程序(如Resin)来说,设置最小值是一种很好的做法
|
|
|
2
7
堆大小应该是“合适”的,但要找到合适的堆大小并不容易。如果它太小,则会耗尽内存;如果太大,则会浪费内存,并且会有GC长时间暂停的风险。当事情出错(而且总是出错)时,您拥有的堆越多,您需要调试的堆就越多,任何泄漏出现的时间也就越长。
理想情况下我会
也就是说对于32位Windows
|
|
|
3
2
Xmx是内存池的上限。Xms是初始大小。仅此而已。每个应用程序的适当大小取决于应用程序的复杂性。将初始大小设置为高于2mb的主要优点是JVM从操作系统请求更多内存的时间更少。如果您设置了256mb的上限,那么32mb-64mb的初始大小对于大多数企业应用程序来说并不是不合理的。 http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/java.html |
|
|
4
1
当然取决于你的申请。 如果您知道您的应用程序最初消耗的内存高达64mb,那么使用默认值(2mb)将使VM请求内存多次达到64mb。这些内存请求会使您的应用程序慢一点,因为在VM请求更多空间之前,垃圾收集器可能会多次运行以释放空间。
如果您已经知道将使用astart64mb,请使用
如果您正在消耗128mb的内存,并且有足够的可用内存,则可以使用
|