最佳答案
在我的应用程序中,通过发出请求更改公共对象的状态,并且响应取决于状态。
class SomeObj():
def __init__(self, param):
self.param = param
def query(self):
self.param += 1
return self.param
global_obj = SomeObj(0)
@app.route('/')
def home():
flash(global_obj.query())
render_template('index.html')
如果我在我的开发服务器上运行它,我希望得到1、2、3等等。如果同时从100个不同的客户端发出请求,会出错吗?预期的结果是,100个不同的客户机每个看到一个从1到100的唯一数字。还是会发生这样的事:
self.param
增加1。self.param
再次递增。因为只有两个客户,所以预期的结果是1和2,而不是2和3。跳过了一个号码。
当我扩展应用程序时,这种情况真的会发生吗? 我应该考虑全局变量的替代品是什么?