在appengin中存储单个时间戳的最简单方法

2024-04-27 15:31:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在Google的AppEngine上运行一个Python脚本。python脚本非常基本。每次脚本运行时,我都需要它更新一个时间戳,以便我可以记录并跟踪脚本上次运行的时间。这将允许我根据脚本最后一次运行的时间等进行逻辑处理。在脚本结束时,我会将时间戳更新为当前时间。在

使用Google的NBD似乎有点过火,但它似乎也是在AppEngine中存储任何数据的唯一方法。有没有更好/更简单的方法来做我想做的事?在


Tags: 数据方法脚本google记录时间逻辑appengine
2条回答

我发现另一种解决这个问题的方法是使用memcache。太简单了。虽然应该注意到memcache可以随时清除,所以NDB可能是一个更好的解决方案。在

设置时间戳:

memcache.set("timestamp", current_timestamp)

然后,要读取时间戳:

memcache.get("timestamp")

这真的很简单,而且不过分。。在appengine中,其他任何东西都会被过度使用-尝试使用低级API、GCS或将其存储在其他服务中都将需要更多的工作,并引入复杂程度和潜在的不可靠性,而且速度会变慢。此外,任何不将datetime对象存储/检索为datetime对象(即文本文件)的机制意味着您将需要将字符串解析为日期,这将产生更多的工作。在

定义它

class TimeStamp(ndb.Model):
    timestamp = ndb.DatetimeProperty(auto_now=True)

创造它。在

^{pr2}$

不读就更新。在

^{pr2}$

读一读,然后更新。在

ts = TimeStamp.get_by_id("TIMESTAMP")
ts.put()

相关问题 更多 >