全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

在Python中使用AOP实现Redis缓存示例

越来越觉得的缓存是计算机科学里最NB的发明(没有之一),本文就来介绍了一下在Python中使用AOP实现Redis缓存示例,小伙伴们一起来了解一下

import redis 
enable=True 
#enable=False 
def readRedis(key): 
  if enable: 
    r = redis.Redis(host='10.224.38.31', port=8690,db=0, password='xxxx')   
    val = r.get(key) 
    if val is None: 
      print "can not find data for KEY:%s \n" % (key) 
      return None 
    else: 
      print "====Get VALUE from Redis by KEY:%s \n" % ( key) 
      return pickle.loads(val) 
  else: 
    print "disable cache" 
   
def writeRedis(key, val): 
  r = redis.Redis(host='10.224.38.31', port=8690,db=0, password='xxxx') 
  if val is None: 
    print "Val is None, don't save it to redis \n" 
  else: 
    r.set(key, pickle.dumps(val) ) 
    r.expire(key, 60*60*24*7) #1week 
    print "====Write value of KEY:%s to redis \n" % (key) 
   
import pickle, functools 
def cache(f): 
 def wrapper(*args, **kwargs): 
  key = pickle.dumps((f.__name__, args, kwargs)).replace("\n","") 
  val = readRedis(key) 
  if val is None: 
   val = f(*args, **kwargs) # call the wrapped function, save in cache 
   writeRedis(key, val) 
  return val # read value from cache 
 functools.update_wrapper(wrapper, f) # update wrapper's metadata 
 return wrapper  
 
@cache 
def foo(n): 
 return n*2 
 
foo(10) # first call with parameter 10, sleeps 
foo(10) # returns immediately 
foo(15) # returns immediately 
foo(19) # returns immediately 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Python实现Redis缓存  # Python  # Redis缓存  # Python实现缓存  # 浅析python实现布隆过滤器及Redis中的缓存穿透原理  # Python的Flask框架使用Redis做数据缓存的配置方法  # Python 使用 Redis 作为缓存的操作方法  # 就来  # 大家多多  # 小伙伴们  # db  # password  # host  # port  # xxxx  # KEY  # return  # pickle  # data  # val  # print  # find 


相关文章: 大学网站设计制作软件有哪些,如何将网站制作成自己app?  如何在万网ECS上快速搭建专属网站?  网站制作公司,橙子建站是合法的吗?  太平洋网站制作公司,网络用语太平洋是什么意思?  Python路径拼接规范_跨平台处理说明【指导】  建站为何优先选择香港服务器?  建站主机如何安装配置?新手必看操作指南  建设网站制作价格,怎样建立自己的公司网站?  如何快速搭建二级域名独立网站?  建站主机系统SEO优化与智能配置核心关键词操作指南  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  网站制作难吗安全吗,做一个网站需要多久时间?  七夕网站制作视频,七夕大促活动怎么报名?  建站主机类型有哪些?如何正确选型  C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换  如何通过远程VPS快速搭建个人网站?  重庆市网站制作公司,重庆招聘网站哪个好?  模具网站制作流程,如何找模具客户?  网站制作外包价格怎么算,招聘网站上写的“外包”是什么意思?  如何快速生成专业多端适配建站电话?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  建站之星下载版如何获取与安装?  香港服务器部署网站为何提示未备案?  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?  建站之星如何快速解决建站难题?  如何在Golang中引入测试模块_Golang测试包导入与使用实践  b2c电商网站制作流程,b2c水平综合的电商平台?  建站之星代理平台如何选择最佳方案?  如何快速打造个性化非模板自助建站?  网站制作软件免费下载安装,有哪些免费下载的软件网站?  网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  子杰智能建站系统|零代码开发与AI生成SEO优化指南  h5网站制作工具有哪些,h5页面制作工具有哪些?  如何通过WDCP绑定主域名及创建子域名站点?  一键网站制作软件,义乌购一件代发流程?  网站设计制作企业有哪些,抖音官网主页怎么设置?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  早安海报制作网站推荐大全,企业早安海报怎么每天更换?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  已有域名和空间,如何快速搭建网站?  网页设计网站制作软件,microsoft office哪个可以创建网页?  如何快速生成凡客建站的专业级图册?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  建站之星如何配置系统实现高效建站?  西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?  如何基于PHP生成高效IDC网络公司建站源码?  C++中引用和指针有什么区别?(代码说明)  建站之星CMS五站合一模板配置与SEO优化指南  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。