gf icon indicating copy to clipboard operation
gf copied to clipboard

g.Redis怎么使用pipeline

Open YunzhiYike opened this issue 6 months ago • 3 comments

What do you want to ask?

g.Redis怎么使用pipeline

YunzhiYike avatar Jun 06 '25 02:06 YunzhiYike

先暂时用lua脚本吧, 我正在尝试改造database/grediscontrib/nosql/redis这俩模块,如果想用底层驱动github.com/redis/go-redis/v9的原生pipeline的功能就得在database/gredis里import这个驱动,但是gredis算是抽象出来的又不能暴露底层驱动的东西,但是如果我在gredis里重新抽象出来IGroupPipline的interface,里面所有get/set/hash操作都实现一遍工程量又有点大,没法复用当前已有的封装,有点纠结,或者在闭包里拦截 UniversalClient.Do生成的redis命令又不太做的到,等本菜鸡再想想怎么弄或者再看看其他大佬的方案

Image

LanceAdd avatar Jun 13 '25 02:06 LanceAdd

我们这个redis是集群是阿里云魔改的,不支持用lua

---- 回复的原邮件 ---- | 发件人 | Lance @.> | | 发送日期 | 2025年06月13日 10:17 | | 收件人 | gogf/gf @.> | | 抄送人 | 云知易客 @.>, Author @.> | | 主题 | Re: [gogf/gf] g.Redis怎么使用pipeline (Issue #4298) | LanceAdd left a comment (gogf/gf#4298)

先暂时用lua脚本吧, 我正在尝试改造database/gredis和contrib/nosql/redis这俩模块,如果想用底层驱动github.com/redis/go-redis/v9的原生pipeline的功能就得在database/gredis里import这个驱动,但是gredis算是抽象出来的又不能暴露底层驱动的东西,但是如果我在gredis里重新抽象出来IGroupPipline的interface,里面所有get/set/hash操作都实现一遍工程量又有点大,没法复用当前已有的封装,有点纠结,或者在闭包里拦截 UniversalClient.Do生成的redis命令又不太做的到,等本菜鸡再想想怎么弄或者再看看其他大佬的方案

image.png (view on web)

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

YunzhiYike avatar Jun 13 '25 02:06 YunzhiYike

我们这个redis是集群是阿里云魔改的,不支持用lua

---- 回复的原邮件 ---- | 发件人 | Lance @.> | | 发送日期 | 2025年06月13日 10:17 | | 收件人 | gogf/gf @.> | | 抄送人 | 云知易客 @.>, Author @.> | | 主题 | Re: [gogf/gf] g.Redis怎么使用pipeline (Issue #4298) | LanceAdd left a comment (gogf/gf#4298)

先暂时用lua脚本吧, 我正在尝试改造database/gredis和contrib/nosql/redis这俩模块,如果想用底层驱动github.com/redis/go-redis/v9的原生pipeline的功能就得在database/gredis里import这个驱动,但是gredis算是抽象出来的又不能暴露底层驱动的东西,但是如果我在gredis里重新抽象出来IGroupPipline的interface,里面所有get/set/hash操作都实现一遍工程量又有点大,没法复用当前已有的封装,有点纠结,或者在闭包里拦截 UniversalClient.Do生成的redis命令又不太做的到,等本菜鸡再想想怎么弄或者再看看其他大佬的方案

image.png (view on web)

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

那暂时没办法了,你要不直接用github.com/redis/go-redis/v9吧,gf的v3版本计划里会删除gredis进行改造,应该会解决这个问题

LanceAdd avatar Jun 13 '25 03:06 LanceAdd

只能这样了

YunzhiYike avatar Jul 07 '25 07:07 YunzhiYike