我正在处理存储在python对象集合中的大量财务数据。我最初是从文本文件中获取数据,创建对象,然后对其进行酸洗,因此我必须通过机器人再次创建对象。泡菜大小接近1 gb。
加载泡菜大约需要1分30秒。我需要减少泡菜装载的数量。我正在运行不同的模拟,以停止和开始运行。因此,每次重新运行仿真时,都需要重新加载泡菜。
我试图通过创建一个单例来解决该问题,并希望仅将一次泡菜加载一次。之后,我希望可以在其他“运行”中访问单例,而不必重新加载单例,因为它已经在内存中。但是,这不起作用。我正在寻找一种解决方案,将对象保留在内存中,而无需重新加载泡菜。 有什么建议吗?
答案 0 :(得分:1)
您是否尝试过Pyro? 据我了解,您需要像内存中的计算管道之类的东西。这非常适用于分布式系统上的内存中数据处理(数据流)。它的工作方式类似于客户端-服务器架构。您可以创建一个脚本(服务器端),将泡菜对象加载到内存中(仅一次),并等待客户端的远程调用(即使它们在同一台计算机上)。您可以在此处找到一些示例:
希望这会对您有所帮助。