国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

在Python中使用AOP實現Redis緩存示例

2020-01-04 16:58:15
字體:
來源:轉載
供稿:網友

越來越覺得的緩存是計算機科學里最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 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 秦安县| 怀来县| 增城市| 黄浦区| 新津县| 栖霞市| 清苑县| 万安县| 襄樊市| 盐池县| 绥芬河市| 喜德县| 当雄县| 宣恩县| 泉州市| 于都县| 江山市| 泰兴市| 鄂温| 府谷县| 灌南县| 乐至县| 屏东市| 鹰潭市| 青河县| 娱乐| 封丘县| 陆丰市| 沁阳市| 翁源县| 营口市| 新巴尔虎右旗| 朔州市| 车致| 共和县| 尤溪县| 福鼎市| 鹤峰县| 东兰县| 达州市| 苍溪县|