Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
加载环境以运行Python脚本的成本有多高?_Python_Environment_Overhead - Fatal编程技术网

加载环境以运行Python脚本的成本有多高?

加载环境以运行Python脚本的成本有多高?,python,environment,overhead,Python,Environment,Overhead,我有一个后台python脚本,每天运行数千次。我只是用python foo.py运行它。脚本本身执行一些导入(解析库和sqlalchemy),然后建立数据库连接,进行解析并将数据保存到db 我想知道每次运行脚本时加载python环境是否会增加很多开销 我可以让脚本启动一次,它会有一个轮询循环,看看它是否应该做些什么,但我想澄清一下,这样做是值得的 任何输入?当然,这会增加很多开销,而且使用内置的轮询或选择()会更环保(尽管可以忽略不计);但是,您必须有一个看门狗来查看它是否崩溃,或者使用resp

我有一个后台python脚本,每天运行数千次。我只是用
python foo.py
运行它。脚本本身执行一些导入(解析库和sqlalchemy),然后建立数据库连接,进行解析并将数据保存到db

我想知道每次运行脚本时加载python环境是否会增加很多开销

我可以让脚本启动一次,它会有一个轮询循环,看看它是否应该做些什么,但我想澄清一下,这样做是值得的


任何输入?

当然,这会增加很多开销,而且使用内置的轮询或选择()会更环保(尽管可以忽略不计);但是,您必须有一个看门狗来查看它是否崩溃,或者使用respawn from inittab。只要服务器负载正常,可能就不值得这样做。

忘了提及,当您的脚本作为守护进程运行时,cron作业中不可察觉的内存泄漏可能会成为吞噬服务器的怪物。您可能希望在头一两个小时内仔细观察它,看看它是否在增长。

此外,还必须考虑分叉进程的操作系统开销。一个大的旧轮询循环更有效。类似的参数适用于使用CGI与FCGI或WSGI。如果它运行速度足够快,开销的差异实际上并不太重要——尽管你可能会减少二氧化碳排放:)如果你受I/O限制,它可能会产生很小的差异