zoukankan      html  css  js  c++  java
  • redis过期事件

    背景:目前在商城项目,订单有过期逻辑,小伙伴提议用redis做,经讨论分析,redis有key的过期事件,貌似可以实现,但是咨询大神,好像不建议这样用,可能会丢数据

    随便写了段python代码测试

    1 import redis
    2 
    3 r = redis.Redis(host='127.0.0.1', port=6379, db=0, password='111')
    4 pubsub = r.pubsub()
    5 pubsub.subscribe('__keyevent@0__:expired')
    6 # pubsub.subscribe('aa')
    7 for item in pubsub.listen():
    8     if item['type'] == 'message':
    9         print(item['data'])
    事件通过 Redis 的订阅与发布功能(pub/sub)来进行分发,故需要订阅 __keyevent@0__:expired,其中0表示dbindex
    要有事件触发还需要额外的修改redis配置notify-keyspace-events Ex(默认是空白字符串)
    测试:通过redis客户端添加key,并指定过期时间,key过期时,即会触发事件。

    有追求,才有动力!

    向每一个软件工程师致敬!

    by wujf

    mail:921252375@qq.com

  • 相关阅读:
    数据库连接池技术
    选择存储引擎的基本原则
    建索引原则
    数据库应用优化
    PDO
    关于cookie和session
    php常见漏洞及分析
    随便写
    spring 注入
    idea导入eclipse项目
  • 原文地址:https://www.cnblogs.com/wujf/p/8080109.html
Copyright © 2011-2022 走看看