Redis加载其他模块

加载第三方模块

git clone https://github.com/wujunze/redis-module-panda.git
make
docker cp panda.so redis:/

如果网络不好,下载不下来,可以下载到 windows 下,通过 scp 工具上传到服务器。make之后生成 panda.so 文件,拷贝到容器内部。

两种加载方式

启动时加载

redis.conf 添加配置,在启动时加载

loadmodule path # /panda.so

运行时加载

enable-module-command yes

有三种取值,no:不允许,local:只能本地连接允许,yes:所有连接都可以,默认no

module load path # /panda.so
module unload module_name
module list # 查看所有

使用模块命令

panda.hello # 输出大熊猫图像
panda.time  # 输出当前事前
panda.rand  # 输出一个随机值

加载官方模块

这里以 RedisTimeSeries 为例

git clone --recursive  https://github.com/RedisTimeSeries/RedisTimeSeries.git
make 

make失败,具体原因未知,这里使用另一种方法

docker search redis
docker pull redislabs/redistimeseries

此镜像中默认加载了RedisTimeSeries模块,创建容器并进入

docker run -d -p 6380:6380 --name redistimeseries redislabs/redistimeseries
docker exec -it redistimeseries /bin/bash
find / -name *.so # 查询 .so 文件

可以查询到文件所在目录为 /usr/lib/redis/modules/redistimeseries.so

docker cp redistimeseries:/usr/lib/redis/modules/redistimeseries.so .

将文件拷贝出来并再拷贝到我们自己的Redis容器中

docker cp redistimeseries.so redis:/
module load /redistimeseries.so

此时就可以使用了

参考

手把手教你玩儿一下 Redis Module 之模块解读
How to fix Redis Error “ERR DEBUG command not allowed.”
Redis干货|解锁Redis 时间序列数据的应用

posted @ 2023-09-28 20:28  strongmore  阅读(105)  评论(0编辑  收藏  举报