performance - web start jar validation getting slower with each Java update -
we have (eclipse rcp) application of 90mb 139 self-signed jars starts in 8s without web start , in 10s in older version of java 7. configured java not use browser proxy, i.e. deployment.proxy.type=0.
with each update of oracle's java startup performance drops. takes more , more time start up:
- 7u60/7u65/8u25: 13s (starts after 5s of web start processing)
- 7u75: 23s
- 8u31: 20s
- 8u40: 29s
- 8u51/8u60ea: 32s
what can solve issue?
from trace/logs can see probable slowdown due validating cached jars taking more time. note this question similar doesn't provide following details:
diagnosis:
- when cached, update check runs in 0.5s (server returns "304 not modified"), full download takes few seconds on gigabit network.
- after update check, each jar xxx there log entry:
validating cached jar xxx.jar
when done, com.sun.javaws.main started after same validation seems happen again , takes same amount of time, application starts.
- the time spent in validating cached jars seems correspond time required before application starts.
- the web start splash screen shows 2 seconds corresponding update check , hidden. after 20 seconds java console appears , application starts.
- during delay, jp2launcher.exe uses 16% processor time on quad core hyperthreading (8 logical cores). looks using 1 of logical processors.
what have tried did not make difference:
- clearing web start cache (countless times)
- configure deployment.properties disable certificate revocation check (as blacklist.check , validation.ocsp, validation.crl)
- running offline
- using version download protocol
- add site exceptions list
- check web server logs problems. none found, update check runs in 500ms 138 jars.
- use web server
- checked certificate expiration date 17 feb 2016
- validated jnlp janela , found no serious issues
- create deployment rule set allow application run unsigned in order speed validation. should possible , looks promising way solve this, not working. see answer on post.
- configured java "do not start console"
detail: weird behavior on 7u60 in 7u60 application started after 5 seconds, after java console appears doing jar validation in background while application started. .log file reports application gets started after validations done. reports 25 seconds , shows first system.out of application happened after 5 seconds or so. shows jar update check server taking 10 times long reported server. guess issue logging framework lagging behind! haven't seen on 8u51.
not answer per se (yet), found java 8u25 when tracing enabled, generate single trace file. 8u51 generates 2 files, 1 jvm used update application , other run it. new (two jvm startups) , think related new setting using native windows sandbox capabilities. problem shouldn't have validate signatures again on second jvm. separation on 2 jvm instances happen no matter if setting using native sandbox disabled (the default).
i reported regression bug, edit answer if answer oracle.
note: java 8u31 still runs on 1 jvm have same doubled startup time question stated.
Comments
Post a Comment