python – Google App Engine是否每个请求运行一个应用程序实例?还是针对所有要求?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – Google App Engine是否每个请求运行一个应用程序实例?还是针对所有要求?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1269字,纯文字阅读大概需要2分钟。
内容图文
![python – Google App Engine是否每个请求运行一个应用程序实例?还是针对所有要求?](/upload/InfoBanner/zyjiaocheng/823/973111c4d29742e6951f52cab97ee75b.jpg)
使用谷歌应用引擎:
# more code ahead not shown
application = webapp.WSGIApplication([('/', Home)],
debug=True)
def main():
run_wsgi_app(application)
if __name__ == "__main__":
main()
如果两个不同的用户在两台不同的机器上请求网页,那么将调用服务器的两个单独实例?
或者只是服务器的一个实例一直在运行以处理所有请求?
如果一个用户在同一个浏览器中打开网页两次怎么样?
编辑:
根据下面的答案,一个实例可以轮流处理来自不同用户的请求.然后考虑以下几部分代码,取自Google给出的示例:
class User(db.Model):
email = db.EmailProperty()
nickname = db.StringProperty()
1,这里的电子邮件和昵称被定义为类变量?
2,同一服务器实例处理的所有请求共享相同的变量,因而错误地相互干扰? (比如,一个人的电子邮件出现在另一个人的页面中)
PS.我知道我应该阅读手册和文档更多,我正在这样做,但是经验丰富的程序员的答案将真正帮助我更快地理解,更多通过,谢谢
解决方法:
实例可以在其生命周期内处理许多请求.在python运行时的线程模型中,每个实例只能在任何给定时间处理单个请求.如果两个请求同时到达,则它们可能由一个实例一个接一个地处理,或者可能产生第二个实例来处理该请求.
编辑:
通常,每个请求使用的变量将限定为RequestHandler实例的.get()或.post()方法,因此不能“泄漏”到其他请求中.您应该注意在脚本中使用全局变量,因为这些变量将缓存在实例中并在请求之间共享.如果不知道你想要的确切原因,请不要使用全局变量(对于任何应用程序,这都是好建议),你会没事的.
内容总结
以上是互联网集市为您收集整理的python – Google App Engine是否每个请求运行一个应用程序实例?还是针对所有要求?全部内容,希望文章能够帮你解决python – Google App Engine是否每个请求运行一个应用程序实例?还是针对所有要求?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。