我正在使用Flask构建一个应用程序,该应用程序在Google App Engine SDK上本地运行。出于某种原因,我的入口点是<code>main。py,仅启动一次。
< code>main.py:
from bootstrap import myapp
app = myapp.bootstrap()
print "I'm bootstrapping"
if __name__ == '__main__':
app.run()
< code>myapp/bootstrap.py:
返回MyApp.Application的实例
< code > myapp/application . py :
扩展 Flask,注册路由,...
控制台输出:
INFO 2016-10-24 20:02:10,807module.py:788]默认:"GET/HTTP/1.1"200 12
INFO 2016-10-24 20:02:11,595module.py:788]默认:"GET/HTTP/1.1"200 12
INFO 2016-10-24 20:02:20,137module.py:402][默认]检测到的文件更改:
。/main.py
我无融资创业
INFO 2016-10-24 20:02:22,199module.py:788]默认:"GET/HTTP/1.1"200 12
INFO 2016-10-24 20:02:28,206module.py:788]默认:"GET/HTTP/1.1"200 12
正确处理请求,并且每次都调用路由函数。另一方面,main.py
仅加载一次,并且仅在文件更改时才重新加载(从日志中可以看出)。似乎整个应用程序启动一次并缓存。
此外:您在路由方法中分配给应用程序实例的值也会被“缓存”,并在进一步的html" target="_blank">请求中可用(这似乎是奇怪的行为)。
这种行为在Python中正常吗?或者这种行为是谷歌应用引擎特有的吗?
感谢一位同事,我发现了问题。
我有PHP背景,目前正在改进我的Python。在PHP中,每个请求的应用程序都是完全从头开始构建的。另一方面,在Python中,您的应用程序被启动一次并将继续运行。请求将由同一个正在运行的实例处理。
所以在我的例子中,应用程序被初始化一次,打印< code >“我正在引导”。在文件更改时,由于更改,应用程序被重新启动。进一步的请求将由具有相同属性的相同运行的应用程序来处理。
我有一个具有多个视图类型的viewholder。 滚动时,只有当更改值时,才会调用onBindViewHolder。这会导致我的列表项无法正确更新。 这是虫子吗?或者我做错了什么。从新的类来看,这似乎是非常奇怪的行为。 这是我的适配器: 我还提取了如下内容: 对于部分 它对第一个可见行运行良好,但随后失败。
我试着按照Jupyter笔记本文档中给出的说明进行操作。 不幸的是,我一直没能弄清楚。这个“起步”领域到底在哪里? 我有一个Windows 7(64位)系统,安装了Anaconda3(不是在C驱动器)。我想改变Jupyter开始文件夹位置。
问题内容: 内容: 我想使用jenkins定期仅处理SVN中已更改的文件,并将处理的输出提交回SVN。 原因: 我们正在将二进制文件提交到SVN中(我们正在使用Oracle Forms,并且正在提交fmb- Files)。我创建了一个脚本,将fmb导出到xml(使用Oracle的原始Fmb2XML工具),然后我将XML转换为我们也想提交的纯源。这使我们可以进行摸索,查看更改等。 问题: 目前,我只
问题内容: 更改crontable文件后是否必须重新启动cron? 问题答案: 没有。 在cron手册页中: … cron然后将检查所有crontab的修改时间,并重新加载已更改的crontab。因此,无论何时修改crontab文件,都无需重新启动cron 但是,如果您只是想确保已完成, 要么
问题内容: 对于那些来自PHP背景的人来说,杀死节点并在每次代码更改后重新启动它的过程似乎非常繁琐。使用节点启动脚本以保存代码更改后自动重新启动节点时,是否有任何标志? 问题答案: forever模块具有多个node.js服务器的概念,并且可以启动,重新启动,停止和列出当前正在运行的服务器。它还可以监视文件更改并根据需要重新启动节点。 如果尚未安装,请安装: 安装后,调用命令:使用该标志监视文件的
问题内容: 可以说我的模块结构如下 现在要给客户端发消息,我需要构建所有模块,因为我正在加载上述所有模块的罐子,以最终发动客户端 并且所有jar都组装在模块部署中。 我的问题是,例如,如果我更改了服务中的任何内容,那么从运行构建时是否有办法可以识别出它只能构建,因此可以构建并将其部署到deploy文件夹中? 问题答案: 如果您正在使用SVN和* nix,请从根模块