2024-05-06 22:14:49 发布
网友
似乎随着频率的不断增加,我被运行过时代码的pyc文件所困扰。在
这导致部署脚本每次都清理*.pyc,否则部署似乎不会生效。在
我想知道,在一个长时间运行的WSGI应用程序中pyc文件有什么好处(如果有的话)?据我所知,唯一的好处是改进了启动时间,但我无法想象它有多重要——即使是这样,每次部署新代码时,也不能真正使用旧的pyc文件。在
这使我认为最佳实践应该是使用PYTHONDONTWRITEBYTECODE环境变量集运行WSGI应用程序。在
我搞错了吗?在
进行部署的最佳策略是将已部署的文件写入一个新目录,然后使用符号链接或类似方法在一次更改中交换代码库。这样做的好处是还可以自动清除任何旧的.pyc文件。在
.pyc
这样,您就可以同时获得两个方面的优势:干净的部署和原子部署,如果您的webapp需要重新启动,还可以使用.pyc的缓存。在
如果您保留最后一个N部署目录(按日期/时间命名很有用),那么您还可以轻松地“回滚”到以前部署的代码版本。如果您有多个服务器机器,您也可以部署到所有的机器上,但是要等到所有机器都得到新代码后再进行切换。在
N
进行部署的最佳策略是将已部署的文件写入一个新目录,然后使用符号链接或类似方法在一次更改中交换代码库。这样做的好处是还可以自动清除任何旧的
.pyc
文件。在这样,您就可以同时获得两个方面的优势:干净的部署和原子部署,如果您的webapp需要重新启动,还可以使用
.pyc
的缓存。在如果您保留最后一个
N
部署目录(按日期/时间命名很有用),那么您还可以轻松地“回滚”到以前部署的代码版本。如果您有多个服务器机器,您也可以部署到所有的机器上,但是要等到所有机器都得到新代码后再进行切换。在相关问题 更多 >
编程相关推荐