栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在flask应用程序中保留全局状态

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在flask应用程序中保留全局状态

根据你的问题,我认为你对“全局”的定义感到困惑。

在常规Flask设置中,你将拥有一台Flask服务器,该服务器具有多个线程以及可能有多个处理请求的进程。假设你有一个股票全局变量,例如“ itemlist = []”,并且你希望在每个请求中(例如,每次有人向端点发出POST请求时)都继续添加该变量。这在理论和实践上都是完全可能的。这也是一个非常糟糕的主意。

问题在于,你无法轻松控制哪些线程和进程“获胜”-列表可能会以一个非常古怪的顺序出现,或者完全损坏。因此,现在你需要讨论锁,互斥锁和其他原语。这是困难而烦人的。

你应该使Web服务器本身尽可能保持无状态。每个请求应该完全独立,并且不共享服务器中的任何状态。而是使用将为你处理状态的数据库或缓存层。这似乎更复杂,但实际上实际上更简单。以SQLite为例; 这很简单。

要解决“ flask.g”对象,即基于每个请求的全局对象。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/392727.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号