我们最近的项目中,使用Skynet+redis作为搭档,redis这个高速缓存使用起来非常方便,效率也很不错,现在进行一个简单的记录和分享.
我们使用的Redis是适配与skynet的lua版本.
Redis的启动非常简单,一句话搞定:
目录定位到:/skynet/myexample/mulclient
启动命令:
redis-serverredis/redis-na-base-master.conf
说明:
这个配置文件来自于Redis configuration file example,进行了些许修改,主要是配置文件路径以及本地ip地址和端口,具体的可以打开redis-na-base-master.conf看看,里面每一项都有非常详细的注释.
接下来是启动skynet服务器:
目录定位到/skynet
启动命令:
./skynet ./myexample/mulclient/config
接着是启动测试客户端,验证redis的工作情况:
目录仍然定位到/skynet
启动命令:
lua ./myexample/mulclient/client1.lua
调用代码简介:
--引入redis
localredis = require 'skynet.db.redis'
--配置redis节点信息
localconfig = { host = '127.0.0.1', port = 20001, db = 0, auth = 'just4test' }
--连接redis数据库
localdb = redis.connect(config)
--设置key-value
db:set('key1','value1')
--获取之前设置的key-value
print('redisvalue : ', db:get('key1'))
源码地址(github): https://github.com/wanzi215/SkynetDemo.git
ps:redis作为高速缓存使用是非常方便的,但是由于存储机制的限制,不方便查询和数据梳理,在这一块我们还是需要搭配MYSQL来使用,定时或手动把数据导入MYSQL,方便运营查询和检索数据也是非常必要的.