如何持久地运行Python脚本?

如何持久地运行Python脚本?,python,performance,Python,Performance,我是Python新手,我编写了一些命令行脚本来进行一些计算。在Perl中,我记得使用PersistantPerl通过持久运行Perl脚本来加速它们 可以将其视为类似于FastCGI的东西,但用于命令行脚本。PersistantPerl始终保持解释器的一个副本在后台运行,因此每次运行脚本时都会受到启动惩罚 Python中是否有一个等效的工具,或者是否有其他策略可以避免频繁运行同一个Python脚本而付出启动代价 更新: 似乎有人偶然发现了同样的想法: 但它看起来更像是一个黑客而不是一个完整的解

我是Python新手,我编写了一些命令行脚本来进行一些计算。在Perl中,我记得使用PersistantPerl通过持久运行Perl脚本来加速它们

可以将其视为类似于FastCGI的东西,但用于命令行脚本。PersistantPerl始终保持解释器的一个副本在后台运行,因此每次运行脚本时都会受到启动惩罚

Python中是否有一个等效的工具,或者是否有其他策略可以避免频繁运行同一个Python脚本而付出启动代价

更新:

似乎有人偶然发现了同样的想法:

但它看起来更像是一个黑客而不是一个完整的解决方案。
任何模块都可以做到这一点?

有一件事可能比保持Python解释器运行(如果可能的话)产生更大的影响,那就是确保Python不必在每次运行脚本时都编译它


实现这一点的最简单方法是使用一个小型启动脚本,该脚本可以导入实际脚本。导入的脚本保存为预编译的
.pyc
文件,因此可以更快地重新运行(就启动时间而言)

如果这确实是一个大问题,您可以将脚本转换为作为守护程序和/或Web服务运行,由命令行工具调用

见:


您是否衡量了“启动惩罚”?它会影响你的工作吗?我从来没有听说过Python解释器有这样的功能;可能这一举措的影响还不足以证明这一努力的合理性。今天的操作系统将可执行文件的二进制文件保存在内存中(除非你没有足够的内存)。我来试试。@GeneQ试试。请公布结果。我也想知道目前哪种方法最好。我想问同样的问题。