加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – StackExchange.Redis中是否提供原始命令?

发布时间:2020-12-15 04:28:30 所属栏目:百科 来源:网络整理
导读:StackExchange.Redis中是否有任何功能允许您直接执行原始命令?就像我提供一个带有命令的字符串,例如(下面的假设代码): conn.Send("ZADD mysortedset 1 john"); 我知道几乎每个命令都有可用的方法,包括ZADD,但这不是重点. 解决方法 “模块”的引入使这更具
StackExchange.Redis中是否有任何功能允许您直接执行原始命令?就像我提供一个带有命令的字符串,例如(下面的假设代码):
conn.Send("ZADD mysortedset 1 john");

我知道几乎每个命令都有可用的方法,包括ZADD,但这不是重点.

解决方法

“模块”的引入使这更具相关性;此API现在存在于Execute(…)中.见: http://blog.marcgravell.com/2017/04/stackexchangeredis-and-redis-40-modules.html

先前:

目前还没有,我怀疑这个好处.特别是,这样做不允许在分片实例(twemproxy,redis-cluster等)上正确路由,不允许重命名命令映射用法,并且不允许使用二进制密钥/值.它还允许使用非常危险且破坏概念的命令,例如select,watch / multi / exec,blocking-pops brpop / blpop / brpoplpush – 所有这些对多路复用器来说都是灾难性的(好吧,选择isn’)这是一个biggie,因为它可以被配置为使得发送离开db undefined – 由于一些类似的例子,已经存在的代码).它还会暴露永远不需要从通用库中使用的危险命令:调试段错误,客户端暂停等 – 再次,所有非常糟糕的想法.

但可以肯定的是,理论上可以做到……但我真的希望看到一个令人信服的理由来抵消上面的许多问题.

目前,执行ad-hoc命令的最常见方式是通过ScriptEvaluate – 当然,它将涉及编写Lua.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读