• (七)redis实战1


    参考:

    • redis in action
    import time
    import redis
    
    ONE_WEAK_IN_SECONDS=7*86400
    VOTE_SCORE=432
    
    def article_vote(conn, user, article):
        cutoff=time.time()-ONE_WEAK_IN_SECONDS
        if conn.zscore('time:',article)<cutoff:
            return
        article_id=article.partition(':')[-1]
        if conn.sadd('voted:'+article_id,user):
            conn.zincrby('score:',article,VOTE_SCORE)
            conn.hincrby(article,'votes',1)
    
    
    def post_aiticle(conn, title, id, user):
        voted = "voted:"+id
        conn.sadd(voted,user)
        conn.expire(voted,ONE_WEAK_IN_SECONDS)
    
        now = time.time()
        article = "article:" + id
        conn.hmset(article,{
            'title':title,
            'time':now,
            'votes':1,
            'poster':user
        })
        conn.zadd('score:',{article:now+VOTE_SCORE})
        conn.zadd('time:',{article:now})
    
    def test():
        conn=redis.Redis('localhost',6379,0)
        user='caicai'
        article='english'
        id="3327"
        post_aiticle(conn,article,id,user)
        post_aiticle(conn,'chinese',"3386",'pipi')
    
    
    test()
    
  • 相关阅读:
    javascript 延迟
    ashx获取另一个页面的返回内容
    Handler实现数据模板
    font-face 在 Firefox无法正常工作问题
    离线缓存 manifest
    事件 event
    源码学习
    调试
    Icon font font face
    aria-label
  • 原文地址:https://www.cnblogs.com/walkinginthesun/p/10247724.html
Copyright © 2020-2023  润新知