Python如何热更新?

2013-01-01 13:08:01 +08:00
 luztak
我的配置写在执行文件里,所以reload貌似不行?
如果行请告诉下做法 没Google到╮(╯_╰)╭
如果不行还有什么方法呢?
7509 次点击
所在节点    Python
16 条回复
yuelang85
2013-01-01 13:35:39 +08:00
import sys
del sys.modules['settings']
import settings
dreampuf
2013-01-01 13:47:04 +08:00
要多热?
从模块reload还是要部分杀掉进程部分重启还是要动态切换RPC连接?
luztak
2013-01-01 19:40:53 +08:00
@yuelang85 这是什么个玩法- -||

@dreampuf 那啥,重启写入(程序重启)啥的......我本来想过crontab...
aisk
2013-01-01 19:45:43 +08:00
发signal
Livid
2013-01-01 19:46:30 +08:00
@luztak 用 supervisord 搞定吧。
luztak
2013-01-01 19:51:53 +08:00
@Livid 我...python通知?有木有doc 0 0
luztak
2013-01-01 19:52:17 +08:00
@aisk 不只是重启啊.
cloudzhou
2013-01-01 20:35:01 +08:00
我的做法一般是起一个nginx代理两个python,写个小程序分别做更新和重启操作。
luztak
2013-01-01 20:48:25 +08:00
@cloudzhou 其实我是想达到单文件......不过 好吧 钻牛角尖了
yuelang85
2013-01-01 22:01:26 +08:00
@luztak 我对你意思的理解是在进程不重启的情况下,使用某一个文件(代码)的最新内容?

那就重新load该文件就可以了。reload只对文件的增量“感兴趣”。我这个方法是强制重新import某文件。至于怎么启动这段代码,看你需求了。。。。
luztak
2013-01-01 22:19:22 +08:00
@yuelang85 其实吧......是修改自身......
reusFork
2013-01-01 22:22:35 +08:00
看看些web框架的auto reload部分
aisk
2013-01-01 22:23:44 +08:00
@luztak 我以为你的需求是不重启进程直接重载配置文件…楼主明确一下需求吧
yuelang85
2013-01-01 22:33:59 +08:00
@luztak setting那个文件自己reload自己?不行的,必须另一家伙告诉进程reload这个文件。

不施以任何外力,物体是不会动的。
luztak
2013-01-01 22:45:39 +08:00
luztak
2013-01-01 22:52:13 +08:00
@reusFork
@aisk i
@yuelang85
@cloudzhou
@Livid
@dreampuf
thx for your time.
ps 前三位 我的手机触屏抽风一下点成回复了...莫怪..

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/56333

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX