TL; DR - 어떻게 주는가 ws_ant.sh
및 / 또는 <wsInstallApp>
런타임에서 작업을 더 힙?
64 비트 Linux 플랫폼에서 실행되는 WebSphere 8.5에 비교적 큰 (~ 160MB) EAR 파일을 배치하려고합니다.
여기 내 작업이 있습니다 build.xml
.
<wsInstallApp
ear="/my/ear/file/location/New.EAR"
properties="jvm.properties"
options="-appname myNewEarApp -update -deployws"
host="localhost"
conntype="SOAP"
user="the_username"
password="not_telling_you"
failonerror="true" />
ws_ant.sh
WAS 와 함께 패키지로 실행 하면 OutOfMemoryError
및 힙 덤프가 발생합니다.
따라서 런타임에 작업 (또는 ws_ant 자체?)에 사용 가능한 힙을 늘려야하지만 그렇게 할 적절한 장소를 알 수는 없습니다. wsadmin.sh 수정을 시도했지만 wsadmin.sh
직접 배포하여 Jython 스크립트로 배포를 실행 <wsInstallApp>
하면 Ant 스크립트 내 에서의 실행에 영향을 미치지 않는 것 같습니다 .
에 따르면 wsInstallApp의 IBM 문서 :
속성은 선택 사항이며 속성과는 JVM 시스템 속성에서 설정하는 속성이 포함 된 자바 프로퍼티 파일을 포함
내 jvm.properties
파일에서 다음을 시도했습니다.
[user@localhost]$ cat jvm.properties
-Xms4096m
-Xmx4096m
효과가 없었습니다. 실행 ws_ant.sh
와 함께 -v
자세한 플래그는 어딘가의 -Xmx 값으로 설정되어 있음을 보여 주었다 -Xmx256m
. 나는 머리에 다른 몇 가지 조합과 형식을 시도했지만 아무것도 작동하지 않는 것 같습니다.
또한 ws_ant.sh
호출에 인수를 추가하려고했습니다 .
[user@localhost]$ ws_ant.sh -Xms4096m -Xmx4096m -v -f build.xml was.deploy
...하지만 아무것도하지 않는 것 같습니다.
내가 무엇을 잘못하고 있지? 압축 wsadmin.sh
하면 Jython 스크립트를 사용하여 배포를 다시 작성하여 요구 사항을 충족시킬 수 있지만 다른 EAR 응용 프로그램의 광범위한 Ant 스크립팅을 활용하려고합니다.
대안? 또한 Ant 태스크를 사용하여 Ant 내에서 일부 Jython 스크립트를 호출 할 수 있다는<wsadmin>
것을 알고 있습니다. 한 가지 방법과 다른 방법의 상대적인 장점과 단점은 무엇입니까? (즉, 실행 wsadmin.sh
/ 비아 자이 스크립트 <[ssh]exec>
또는 <wsadmin>
대 <wsInstallApp>
[및 "ws_____"형제).