我正在使用jinja2作为模板系统在python中的google app引擎上编写一个Web应用程序,该应用程序基本上允许用户撰写帖子/评论并对其他用户的帖子进行排名。排名系统基于上/下票数和评论数。我正在尝试使用memcache存储此计算值并相应地对帖子进行排名。
我只想偶尔将值存储在数据库中,以免使写入成本变得昂贵。我计划有一个计数器,每10票/评论将其存储在数据库中。我在想这样的事情:
# I update the counter every time that I add a vote or comment
counter = 0
def posts_cache(update = False):
global counter
key = 'main'
posts = memcache.get(key)
if posts is None or update:
logging.error("DB QUERY")
posts = db.GqlQuery("SELECT * "
"FROM Post "
"ORDER BY rank DESC "
"LIMIT 100",
key)
posts = list(posts)
memcache.set(key, posts)
if counter>=10:
counter = 0
#put the memcache posts in the database
return posts
但我不知道如何在memcache中发布我的帖子并将它们存储在数据库中。有没有办法在python中这样做?我查看了文档,但没有找到明确的方法。
答案 0 :(得分:1)