操作系统:
windows server 2003 R2 Enterprise x64 Edition Service Pack2
硬件:32G内存,24个cpu(2.4G)
weblogic9.20
sun jdk1.5一、在weblogic console 修改参数"initial capacity","Maximun Capacity","Capacity Increment" 分别为50,150,10 (原始值为1,15,1) ,激活改变时一直没有反应,重新进入控制台,点击激活改变,报错:
An error occurred during activation of changes, please see the log for details.
weblogic.management.provider.EditFailedException: Unable to start new activation while preparing
Unable to start new activation while preparing
看了日志也没有什么信息。为什么会改不了这些参数?我以前在别的电脑上都可以改的。二、修改setDomainEnv.cmd中的参数
set MEM_ARGS=-Xms512m -Xmx1024m
将上面的值设为1024,2048都启动不了,设成512,1024才可以启动。
因为电脑的内存足够大,所以想给weblogic设多点内存,为什么设不了?
windows server 2003 R2 Enterprise x64 Edition Service Pack2
硬件:32G内存,24个cpu(2.4G)
weblogic9.20
sun jdk1.5一、在weblogic console 修改参数"initial capacity","Maximun Capacity","Capacity Increment" 分别为50,150,10 (原始值为1,15,1) ,激活改变时一直没有反应,重新进入控制台,点击激活改变,报错:
An error occurred during activation of changes, please see the log for details.
weblogic.management.provider.EditFailedException: Unable to start new activation while preparing
Unable to start new activation while preparing
看了日志也没有什么信息。为什么会改不了这些参数?我以前在别的电脑上都可以改的。二、修改setDomainEnv.cmd中的参数
set MEM_ARGS=-Xms512m -Xmx1024m
将上面的值设为1024,2048都启动不了,设成512,1024才可以启动。
因为电脑的内存足够大,所以想给weblogic设多点内存,为什么设不了?
第二个问题是因为你用了sun的jdk,sun的jdk对最大内存有限制大约1.5G,你改成2g肯定起不来,把jdk改成bea的jroket吧,jroket对大的应用做了优化,你再设置设为1024,2048就可以了。
集群是解决负载均衡问题,只要服务器上超过2CPU就是解决问题的好办法,好比两人干体力活,一个做事,一个累了一个可以歇着,比你一个力气大的人做事要好JVM回收最大特征就是对于同一个SERVER下回收过程需要停止服务,以检查出那些内存是需要被回收的,内存回收大致有7种算法,根据服务器厂商不一样会默认不同算法,算法都会去遍历内存,一般情况下如果你监控过JVM内存,它一般情况下是不会回收的,只有不太够用的时候才会去回收,如果内存大,第一遍历时间很长,第二对外服务的问题,而集群是解决这一问题的八办法,所以在WebLogic上做集群几乎不分软硬件的区分,硬件集群只是效率较好,WebLogic自带的集群代理节点可能代码上不是那么好,可以自己写多个机器上分发只是分发IP+端口号,同一个机器上就是分发到不同端口上去处理,为了较好的利用内存使用和在内存回收上做到切片回收(一般我个人做了一下测试和检测,对于2G内存回收非常快,前台访问只会瞬间暂停而已,我们一般配置一个节点都是1~2G以内)。
如果是数据库连接,要检查数据库的可用SESSION是否够用,要剪掉已经被使用的