codecamp

Cache

Cache库

Cache库仅是redis client库的一个lua实现封装, 在初始化后即可在任何地方引用.

Cache库内部封装了一个简单的连接池, 方便大家在使用的时候无需手动管理redis session生命周期.

Cache库有自动的断线、超时重连机制, 但这仅限于底层网络出现抖动时保证session重连(超过连接次数将会抛出异常).

Cache.init(opt)

使用Cache.init进行初始化, opt参数是一个lua table. 请根据实际情况传入如下字段:

  1. host = 'redis server主机名或者ip地址'

  1. port = 6379, redis server端口号

  1. auth = '对应redis的auth' 可选(optional)

  1. db = nil or 指定db(0), 可选(optional)

  1. max = 100 指定最大redis session连接数

此方法的返回值(true)用来判断是否初始化成功, 初始化失败将会进行重复尝试. 到达最大尝试次数后会抛出异常.

由于会抛出异常, 所以在初始化阶段如果有业务需要请自行用pcall或者xpcall封装.

支持大部分的redis API

hget/get/hset/set/hmset/smember/exists等等API, 另外还有一些API如loadscript/eval/evalsha也增加了支持.

具体使用这里就不一一列举出来, 请大家自行参阅redis的相关API文档并对照test_redis.lua进行学习.

DB
class
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

API 使用手册

HTTP API

Mail API

DB API

DB

Cache API

class API

MQ API

MQ

Crypt API

cf API

cf

System API

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }