2024-04-27 15:31:03 发布
网友
我正在Google的AppEngine上运行一个Python脚本。python脚本非常基本。每次脚本运行时,我都需要它更新一个时间戳,以便我可以记录并跟踪脚本上次运行的时间。这将允许我根据脚本最后一次运行的时间等进行逻辑处理。在脚本结束时,我会将时间戳更新为当前时间。在
使用Google的NBD似乎有点过火,但它似乎也是在AppEngine中存储任何数据的唯一方法。有没有更好/更简单的方法来做我想做的事?在
我发现另一种解决这个问题的方法是使用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)
创造它。在
不读就更新。在
读一读,然后更新。在
ts = TimeStamp.get_by_id("TIMESTAMP") ts.put()
我发现另一种解决这个问题的方法是使用memcache。太简单了。虽然应该注意到memcache可以随时清除,所以NDB可能是一个更好的解决方案。在
设置时间戳:
然后,要读取时间戳:
这真的很简单,而且不过分。。在appengine中,其他任何东西都会被过度使用-尝试使用低级API、GCS或将其存储在其他服务中都将需要更多的工作,并引入复杂程度和潜在的不可靠性,而且速度会变慢。此外,任何不将datetime对象存储/检索为datetime对象(即文本文件)的机制意味着您将需要将字符串解析为日期,这将产生更多的工作。在
定义它
创造它。在
^{pr2}$不读就更新。在
^{pr2}$读一读,然后更新。在
相关问题 更多 >
编程相关推荐