请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

redis连接池是否需要关闭和multi的执行?

老师,看到你封装的rdsdo方法有两个疑问。

  1. con := pool.Get()之后,con不需要closed吗?我看到一些人封装的时候都会在下面defer con.closed() ,您这样不关闭可以吗?
  2. 碰到multi的执行要怎么办,如我常用php写的:
 Redis::multi()
            ->hMSet($key, ['id' => $info->user_id,'date'=>date('Y-m-d')])
            ->expire($key,86400)
            ->exec()

正在回答

1回答

1 con需要Close,之前确实漏了,多谢提醒。 2 直接调用Do("HMGET",key,key1,value1,key2,value2,...)就可以
0 回复 有任何疑惑可以回复我~
  • 第二个疑问,老师举的例子好像没有代表性,本身HMSET是一条可以执行多个key-value设置的命令.而我想知道的mulit之后怎么执行,您是不是想表表达直接调用DO("MULTI","HMSET",key,key1,value1,key2,value2,expire,key,86400,exec)这样去调用?
    回复 有任何疑惑可以回复我~ 2020-04-03 10:33:57
  • hmset本来就是操作多条数据的命令,do方法其实就是包装了redis原生命令。直接参考redis命令就可以了,把对应参数依次跟在后面就好
    回复 有任何疑惑可以回复我~ 2020-04-03 11:11:38
  • 谢谢老师
    回复 有任何疑惑可以回复我~ 2020-04-03 12:04:01
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信