加载环境以运行Python脚本的成本有多高?
我有一个后台python脚本,每天运行数千次。我只是用加载环境以运行Python脚本的成本有多高?,python,environment,overhead,Python,Environment,Overhead,我有一个后台python脚本,每天运行数千次。我只是用python foo.py运行它。脚本本身执行一些导入(解析库和sqlalchemy),然后建立数据库连接,进行解析并将数据保存到db 我想知道每次运行脚本时加载python环境是否会增加很多开销 我可以让脚本启动一次,它会有一个轮询循环,看看它是否应该做些什么,但我想澄清一下,这样做是值得的 任何输入?当然,这会增加很多开销,而且使用内置的轮询或选择()会更环保(尽管可以忽略不计);但是,您必须有一个看门狗来查看它是否崩溃,或者使用resp
python foo.py
运行它。脚本本身执行一些导入(解析库和sqlalchemy),然后建立数据库连接,进行解析并将数据保存到db
我想知道每次运行脚本时加载python环境是否会增加很多开销
我可以让脚本启动一次,它会有一个轮询循环,看看它是否应该做些什么,但我想澄清一下,这样做是值得的
任何输入?当然,这会增加很多开销,而且使用内置的轮询或选择()会更环保(尽管可以忽略不计);但是,您必须有一个看门狗来查看它是否崩溃,或者使用respawn from inittab。只要服务器负载正常,可能就不值得这样做。
忘了提及,当您的脚本作为守护进程运行时,cron作业中不可察觉的内存泄漏可能会成为吞噬服务器的怪物。您可能希望在头一两个小时内仔细观察它,看看它是否在增长。此外,还必须考虑分叉进程的操作系统开销。一个大的旧轮询循环更有效。类似的参数适用于使用CGI与FCGI或WSGI。如果它运行速度足够快,开销的差异实际上并不太重要——尽管你可能会减少二氧化碳排放:)如果你受I/O限制,它可能会产生很小的差异