保持JVM运行

时间:2013-12-01 19:03:13

标签: java python jvm

我们一直在使用Django开发Web应用程序。我们需要使用的一个库是用java编写的,所以我创建了一个包含我们需要使用的所有java代码的jar文件。 python脚本只是使用子进程模块调用java程序并恢复执行。

每次调用java程序时,它都会初始化jvm,做一些工作,然后取消初始化。这引入了一些开销,这些开销最终可能不那么重要,但是每当我们需要来自java库的东西时,我都必须经历这个构造/破坏循环。

有没有一种优雅的方式来做到这一点,而没有我刚才描述的开销?

1 个答案:

答案 0 :(得分:1)

如果没有修复python,所以它不会这样做,你可以启动一个java服务,它调用你的代码并通过TCP与它进行python对话,例如使用protobuf。这样服务就可以一直运行。