如何预加载python模块,比如ruby的zeus、spork、commands或spring,以避免启动时间?

2024-06-16 10:53:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个大型python项目,在实际发生任何事情之前,需要大约4秒钟的时间来获取所有必要的文件。在这个项目中运行大多数脚本时,这并不是太糟糕,因为它们很少运行,而且启动速度慢也无关紧要。你知道吗

然而,这对于测试和执行TDD来说确实是一个不便,因为仅仅运行一个测试,它至少需要4秒,即使测试本身在1ms内运行,因为必须首先加载这么多代码。你知道吗

Ruby/Rails有许多项目可以减少测试和其他常见操作的启动时间,例如zeussporkspringcommands库。你知道吗

python有没有类似的项目?我找到了roadrunner,但它已经6年没有更新了,而且是plone特有的。旧的pyunit看起来像是用它的GUI做了这样的事情,但是它也过时了,我喜欢在远程终端上很容易工作的东西。Reimport是一个可能有用的小库,这里有一个gist of an attempt at a module watcher。你知道吗

由于必须处理导入依赖关系,这样的项目似乎一点都不简单。你知道吗

我希望这个问题是适当的,所以,如果不是,请直接告诉我到适当的SE网站上发布。你知道吗

为了以防万一,我目前正在使用nose来运行我的测试。你知道吗

提前谢谢你的帮助。你知道吗


Tags: 文件项目代码脚本时间事情commandsspork