Tomcat与内存配置的问题

byeceg 2011-07-28 10:58:49
1.网上是这么说的:JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。
如果我这台机器部署了多个tomcat,那么这个大小以什么为参考?

2.JAVA_OPTS='-Xms256m -Xmx1024m -Xss128k -XX:+AggressiveOpts -XX:+UseParallelGC -XX:+UseBiasedLocking'
后面几个参数是什么意思?-Xss128k -XX:+AggressiveOpts -XX:+UseParallelGC -XX:+UseBiasedLocking
-Xss128k 是指创建线程的大小吗?
-XX:+AggressiveOpts -XX:+UseParallelGC -XX:+UseBiasedLocking 这几个呢?

3.永久保存区域:主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中。请问初始值(默认值)是多少?一般配多少合适?

4.如果程序中动态生成大量的jsp页面会导致永久保存区域溢出吗?(第3条)

谢谢。
...全文
117 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
byeceg 2011-08-04
  • 打赏
  • 举报
回复
第4点:
http://www.javagg.com/archives/784
上面说
默认分配为64M

-XX:PermSize设置最小分配空间,-XX:MaxPermSize设置最大分配空间。一般把这两个数值设为相同,以减少申请内存空间的时间。

============================================
-Xss256k -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m
请问下
-Xss256k用于做什么的?
MaxNewSize呢?

byeceg 2011-07-29
  • 打赏
  • 举报
回复
程序员Shark 2011-07-28
  • 打赏
  • 举报
回复
java在分配内存的时候 分为新生代 和旧生代 、持久代
对于新产生的对象会放在新生代内,对于符合一定条件 比较大的对象或者大数组会直接放到旧生代中
如果新生代中的对象经过多次垃圾回收,仍然还是存在 ,那么这时候就会将此种类型对象转移到旧生代。
持久代 是放加载的类得信息 ,如方法 field,静待变量相关信息。
-XX:+UseParallelGC指定垃圾回收方式 并行回收
为了防止jvm频繁调整内存大小 -Xms256m -Xmx1024m 这两个值应该设置相等

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧