繁体   English   中英

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

[英]Are raw commands available in StackExchange.Redis?

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等)上正确路由,不允许重命名命令映射用法,并且不允许使用二进制密钥/值。 它还允许使用非常危险且破坏概念的命令,例如selectwatch / multi / exec ,blocking-pops brpop / blpop / brpoplpush - 所有这些对多路复用器来说都是灾难性的(好吧, select isn')这是一个biggie,因为它可以被配置为使得Send离开db undefined - 由于一些类似的例子,已经存在的代码)。 它还会暴露永远不需要从通用库中使用的危险命令: debug segfaultclient pause等 - 再次,所有非常糟糕的想法

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM