Vla*_*hev 17 java vmware virtualbox weblogic virtual-machine
(已解决!通过FAKING SYSTEM RANDOM GENERATOR,见下文)
我正在为我的开发/构建团队设置VM映像.在该VM内部,应该运行Weblogic域.我使用Ububtu服务器发行版,WLS 9.2MP3 + ALSB.
一切正常,速度很快,但在开始时WLS会在可测量的时间内停止两次.两站总共延迟约10分钟.对于部署需要重新启动服务器的任务,这非常烦人.:-(
睡眠时间不是恒定的,有时服务器启动非常快,有时一般,有时10分钟或更长时间.
有趣的是,如果我在查看停止的服务器时按Enter键,它会更快地唤醒,有时几秒钟之后.WLST(Weblogic Jython shell)在VM中执行时也会挂起很长时间.虽然它没有对Enter作出反应.
这里必须是一些使用VM运行WLS的开发人员.我想知道其他人是否有同样的问题?有人能够解决它吗?
这是服务器输出(仅用于案例):
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_12-b04)
Java HotSpot(TM) Client VM (build 1.5.0_12-b04, mixed mode)
Starting WLS with line:
/shared2/beahome/jdk150_12/bin/java -client -Xmx256m -XX:MaxPermSize=128m -Xverify:none -da -Dplatform.home=/shared2/beahome/weblogic92
-Dwls.home=/shared2/beahome/weblogic92/server -Dwli.home=/shared2/beahome/weblogic92/integration -Dweblogic.management.discover=true -Dwl
w.iterativeDev= -Dwlw.testConsole= -Dwlw.logErrorsToConsole= -Dweblogic.ext.dirs=/shared2/beahome/patch_weblogic923/profiles/default/sysext_
manifest_classpath -Dweblogic.management.username=admin -Dweblogic.management.password=wlsadmin -Dweblogic.Name=LOGMGR-admin -Djava.security
.policy=/shared2/beahome/weblogic92/server/lib/weblogic.policy weblogic.Server
<1-Apr-2010 12:47:22 o'clock PM GMT-05:00> <Notice> <WebLogicServer> <BEA-000395> <Following extensions directory contents added to the end
of the classpath:
/shared2/beahome/weblogic92/platform/lib/p13n/p13n-schemas.jar:/shared2/beahome/weblogic92/platform/lib/p13n/p13n_common.jar:/shared2/beahom
e/weblogic92/platform/lib/p13n/p13n_system.jar:/shared2/beahome/weblogic92/platform/lib/wlp/netuix_common.jar:/shared2/beahome/weblogic92/pl
atform/lib/wlp/netuix_schemas.jar:/shared2/beahome/weblogic92/platform/lib/wlp/netuix_system.jar:/shared2/beahome/weblogic92/platform/lib/wl
p/wsrp-common.jar>
<1-Apr-2010 12:47:22 o'clock PM GMT-05:00> <Info> <WebLogicServer> <BEA-000377> <Starting WebLogic Server with Java HotSpot(TM) Client VM Ve
rsion 1.5.0_12-b04 from Sun Microsystems Inc.>
<1-Apr-2010 12:47:23 o'clock PM GMT-05:00> <Info> <Management> <BEA-141107> <Version: WebLogic Server 9.2 MP3 Mon Mar 10 08:28:41 EDT 2008
1096261 >
<1-Apr-2010 12:47:25 o'clock PM GMT-05:00> <Info> <WebLogicServer> <BEA-000215> <Loaded License : /shared2/beahome/license.bea>
<1-Apr-2010 12:47:25 o'clock PM GMT-05:00> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING>
<1-Apr-2010 12:47:25 o'clock PM GMT-05:00> <Info> <WorkManager> <BEA-002900> <Initializing self-tuning thread pool>
<1-Apr-2010 12:47:25 o'clock PM GMT-05:00> <Notice> <Log Management> <BEA-170019> <The server log file /shared2/wldomains/beaadmd/LOGMGR/ser
vers/LOGMGR-admin/logs/LOGMGR-admin.log is opened. All server side log events will be written to this file.>
Run Code Online (Sandbox Code Playgroud)
在这里,我们有第一次延迟,最多5分钟......
<1-Apr-2010 12:53:21 o'clock PM GMT-05:00> <Notice> <Security> <BEA-090082> <Security initializing using security realm myrealm.>
<1-Apr-2010 12:53:24 o'clock PM GMT-05:00> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STANDBY>
<1-Apr-2010 12:53:24 o'clock PM GMT-05:00> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING>
<1-Apr-2010 12:53:25 o'clock PM GMT-05:00> <Notice> <Log Management> <BEA-170027> <The server initialized the domain log broadcaster success
fully. Log messages will now be broadcasted to the domain log.>
<1-Apr-2010 12:53:25 o'clock PM GMT-05:00> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to ADMIN>
<1-Apr-2010 12:53:25 o'clock PM GMT-05:00> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RESUMING>
<1-Apr-2010 12:53:28 o'clock PM GMT-05:00> <Notice> <Security> <BEA-090171> <Loading the identity certificate and private key stored under t
he alias adminuialias from the jks keystore file /shared2/wldomains/beaadmd/LOGMGR/CustomIdentity.jks.>
Run Code Online (Sandbox Code Playgroud)
这是第二次,最多5分钟.
<1-Apr-2010 12:58:56 o'clock PM GMT-05:00> <Notice> <Security> <BEA-090169> <Loading trusted certificates from the jks keystore file /shared
2/wldomains/beaadmd/LOGMGR/CustomTrust.jks.>
<1-Apr-2010 12:58:57 o'clock PM GMT-05:00> <Notice> <Server> <BEA-002613> <Channel "DefaultSecure" is now listening on 192.168.56.102:7002 f
or protocols iiops, t3s, ldaps, https.>
<1-Apr-2010 12:58:57 o'clock PM GMT-05:00> <Notice> <Server> <BEA-002613> <Channel "Default" is now listening on 192.168.56.102:8012 for pro
tocols iiop, t3, ldap, http.>
<1-Apr-2010 12:58:57 o'clock PM GMT-05:00> <Notice> <WebLogicServer> <BEA-000331> <Started WebLogic Admin Server "LOGMGR-admin" for domain "
LOGMGR" running in Development Mode>
<1-Apr-2010 12:58:57 o'clock PM GMT-05:00> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RUNNING>
<1-Apr-2010 12:58:57 o'clock PM GMT-05:00> <Notice> <WebLogicServer> <BEA-000360> <Server started in RUNNING mode>
Run Code Online (Sandbox Code Playgroud)
UPDATE
我想我已经有了这条赛道:它必须是randon种子初始化.这可以解释为什么生成键盘事件会释放服务器.我做了线程转储,一个线程处于runnable状态,但是等待:
"[STANDBY] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=1 tid=0x0a7b06e8 nid=0xeda runnable [0x728a500
0..0x728a6d80]
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(FileInputStream.java:194)
at sun.security.provider.NativePRNG$RandomIO.readFully(NativePRNG.java:185)
at sun.security.provider.NativePRNG$RandomIO.implGenerateSeed(NativePRNG.java:202)
- locked <0x7d928c78> (a java.lang.Object)
at sun.security.provider.NativePRNG$RandomIO.access$300(NativePRNG.java:108)
at sun.security.provider.NativePRNG.engineGenerateSeed(NativePRNG.java:102)
at java.security.SecureRandom.generateSeed(SecureRandom.java:475)
at weblogic.security.AbstractRandomData.ensureInittedAndSeeded(AbstractRandomData.java:83)
Run Code Online (Sandbox Code Playgroud)
Vla*_*hev 20
解决了
Weblogic使用SecureRandom来初始化安全子系统.SecureRandom默认使用/ dev/urandom设备.出于某种原因,在VM下读取此设备会经常停止.生成控制台事件有助于创建更多随机性,并释放WLS.
出于测试目的,我更改了jre/lib/security/java.security文件:
securerandom.source=file:/tmp/big.random.file
Run Code Online (Sandbox Code Playgroud)
Weblogic现在在15秒内启动.
由于我们不测试VM中的任何安全性内容,重复的种子对我们来说完全没问题.
小智 8
如果您的企业标准应用程序服务器没有更改二进制文件的权限,您可以添加一个JVM标志来覆盖应该使用随机生成器.例如:
-Djava.security.egd=file:/dev/./urandom
Run Code Online (Sandbox Code Playgroud)
这样您就不必更改任何系统设置.
小智 6
从那以后,Oracle创建了与此相关的Metalink注释.在Linux虚拟环境中,FMW配置向导非常慢.WLS服务器的启动也非常慢.[ID 1344974.1]
...
解决方案1 1)下载并安装以下rpm:rng-utils-2.0-1.14.1.fc6.x86_64.rpm.请联系您的供应商以获取下载详 2)启动随机生成器如下:rngd -r/dev/urandom -o/dev/random -t 1
默认情况下,Linux上的/ dev/random似乎依赖于阻塞,直到产生足够的随机性.没有连接鼠标和键盘的虚拟服务器可能会严重阻塞.在上面的命令中,输入取自unblocking/dev/urandom,因此等待随机性不会成为应用程序瓶颈.
| 归档时间: |
|
| 查看次数: |
31857 次 |
| 最近记录: |