10,267
社区成员




非计算机专业,手里有一个一直维护的Java计算库,能够完成业务计算。由于Python的生态圈强大,目前主要的数据分析和可视化代码是在Python中完成的,业务计算环节一直使用Python调用Java完成。Python调用Java的Jar库,必须通过Jpype或者JCC的形式调用,这两个都必须在使用前启动java虚拟机,然后java函数在这个虚拟机上执行。
现在的问题是,随着计算场景的复杂程度提高,Python调用Jar计算的速度已经远远够不上需求,算2个小时的场景数据需要一天的时间。现在想改进这一套计算程序,一种方式是在Java中重新修改计算函数,做成多线程形式;一种是能够找一种在Python中实现并行调用Java的方法。第一种方法比较复杂,而且我也没有找到一种好的存储大量数据的方法,第二种方法没有找到实现思路。
请问各位有没有解决的方法?
python如果以高并发的方式调用java程序,linux系统建议使用多进程并发,win系统多线程和多进程都可以。至于数据存储方面,数据库和文件方式存储也是手段。