python - App Engine 应用程序设计问题

标签 python google-app-engine

我想从另一个站点加载信息(这部分已完成),但每次加载页面时我都会这样做,但这是行不通的。所以我正在考虑在设置表中添加一个变量,例如“上次检查的 BBC 站点”,当页面加载时,它会检查自上次检查以来是否已经足够长的时间来再次检查。这样做有什么愚蠢的地方吗?

我是否绝对必须使用表来存储像这样的设置的 1 个变量?

最佳答案

除了在数据存储中创建一个实体来跟踪“上次访问时间”之外,我认为还有 2 个选项适合您。

一种方法是使用 jldupont 描述的 cron api 定期检查外部页面。

第二种方法是将上次访问时间存储在内存缓存中。尽管内存缓存不是永久性的,但如果您仅存储上次刷新时间,则不必是永久性的。如果您在 memcache 中的条目由于某种原因消失,最糟糕的情况就是您再次获取该页面,并使用当前日期/时间更新 memcache。

如果您想定期检查外部页面,第一种方法是最好的。如果您只想在用户点击您的页面时检查外部页面,并且并且您最近没有自己获取该页面,那么第二种方法可能会更好。使用此方法,您不会浪费资源来获取外部页面,除非有人实际上正在寻找与其相关的数据。

关于python - App Engine 应用程序设计问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1916009/

相关文章:

google-app-engine - GAE 云端点 - 部署后 Api 未更新

python - 如何从 ast.FunctionDef 节点创建函数对象?

Python SocketIO_client 失败 ImportError : No module named socketIO_client

node.js - gcloud Node 数据存储 - 如何在单个事务中过滤多个实体键?

google-app-engine - docker -v 和符号链接(symbolic link)

java - Cloud Endpoints 为作为命名参数传递的特殊字符生成 HTTP 404

python - 将函数应用于 pandas dataframe groupby 中的第二列

python - 循环时不离开

python - Matplotlib gridspec - 将另一个三次图放置在几个子图旁边

google-app-engine - 如何将我的 Sqlite 数据库移植到 GAE?