首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当从Python调用jar时,如何最小化JavaVM的加载时间?

当从Python调用jar时,如何最小化JavaVM的加载时间?
EN

Stack Overflow用户
提问于 2016-05-22 07:18:55
回答 1查看 55关注 0票数 0

我使用Google Closure Compiler jar文件来最小化生产JS文件,这些文件反映了我的客户所做的更改。每当用户单击后端面板上的“发布更改”时,它都会创建一个对compiler.jar文件的系统调用-但每次这样的调用都需要4-6秒,而不管JS文件的大小。经过研究,我发现最大的延迟是为每个呼叫加载JavaVM。系统是Ubuntu和Python。

如何保持JavaVM持续运行,并让它在每次用户单击“发布”时加载compiler.jar文件?

Python代码:

代码语言:javascript
复制
import subprocess
jarjs = os.path.join(ROOT_DIR, "compiler.jar")
fn_output = fn_source.replace('.js','.min.js')
p = subprocess.Popen(['java','-jar',jarjs,'--jscomp_off','internetExplorerChecks','--compilation_level','SIMPLE_OPTIMIZATIONS','--js',fn_source,'--js_output_file',fn_output], stdout=subprocess.PIPE,stderr=subprocess.PIPE)
out, err = p.communicate()

fuller code

EN

回答 1

Stack Overflow用户

发布于 2016-05-22 14:49:23

java有几种保持进程加载的通用解决方案,包括:

http://www.martiansoftware.com/nailgun/

https://github.com/ninjudd/drip

更新9月2018:现在还可以使用Graal native-image工具构建闭包编译器。这提供了惊人的启动速度,但降低了峰值性能。对于在JVM版本中构建时间低于30秒的任何东西,这可能是一个很好的权衡。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37368972

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档