在此GAE应用程序中,每个请求创建了多少个对象?

时间:2013-01-12 21:19:15

标签: google-app-engine python-2.7 wsgi

我正在使用Python和Webapp2开发Google App Engine应用程序。对于这个问题,相关部分是:

import webapp2

my_object = MyClass()

class MainPage(webapp2.RequestHandler):
  def get(self):
    # do stuff

app = webapp2.WSGIApplication([
    ('/', MainPage)
], debug=True)

因此,每次我的应用程序加入时,MainPage请求处理程序都会处理请求。假设有100个用户在给定时刻使用该应用程序。我的问题是:

  • 创建了多少webapp2.WSGIApplication个实例?只有1? 100? (如果我理解WSGI,我认为只有1)
  • 创建了多少MyClass个实例?

1 个答案:

答案 0 :(得分:3)

在Google App Engine上,依靠正在创建的MainPage()MyClass的100个实例;访问您网站的每个用户都可能会被路由到庞大的Google云中的其他计算机。

在本地运行,MyClass将在每个进程时实例化一次;一些WSGI服务器运行多个procsses(forking)来处理传入的请求。为每个传入请求创建MainPage itstance(因此100次)。