使用Booksleeve将字节数组键序列化到Redis的最佳方法

使用Booksleeve将字节数组键序列化到Redis的最佳方法,redis,booksleeve,Redis,Booksleeve,我需要找到最好的实现,将字节数组发送到带有Booksleeve的Redis服务器的密钥空间 我尝试了不同的实现,比如UTF8编码,但我不知道redis服务器内存中最优化的实现是什么(我将使用数百万个这样的密钥,所以我真的需要内存中最短的密钥) 有人已经有了这个要求吗?在当前的构建中,为了简单起见,我坚持使用字符串键,但是代码可以很好地处理二进制-它使用二进制API。IIRC我这周在收件箱里收到了一个补丁,它增加了对二进制键的支持 因为它似乎很受欢迎,我将在本周关注它 编辑:一周过去了;原因是我

我需要找到最好的实现,将字节数组发送到带有Booksleeve的Redis服务器的密钥空间

我尝试了不同的实现,比如UTF8编码,但我不知道redis服务器内存中最优化的实现是什么(我将使用数百万个这样的密钥,所以我真的需要内存中最短的密钥)


有人已经有了这个要求吗?

在当前的构建中,为了简单起见,我坚持使用字符串键,但是代码可以很好地处理二进制-它使用二进制API。IIRC我这周在收件箱里收到了一个补丁,它增加了对二进制键的支持

因为它似乎很受欢迎,我将在本周关注它


编辑:一周过去了;原因是我还在redis cluster support上做一些工作,这需要一些新的接口,因为:

  • 并非所有操作都受支持
  • 不支持并行(编号)数据库
因此,基本上我的计划是将两个工作卷到同一个分支中,给出:

  • 一组新的接口
    • 它使用
      结构
      作为
      参数,并使用
      字符串
      字节
      中的隐式转换运算符,允许两者交替使用
    • 在单独的API上使用redis cluster和redis server命令
    • 以及在旧连接上的一种新方法,即
      数据库(3).key.Remove(key)或类似的东西

ETA仍然是虚构的,但我想解释为什么我没有简单地抛出现有的补丁-我认为redis cluster的出现使它成为重新访问整个API的好时机(但显然是以一种不会破坏现有代码的方式)。

redis支持二进制数据。向Redis发送字节数组不需要进行任何编码。我注意到我们可以发送二进制值,但我找不到任何方法使用booksleeve包装器发送二进制键。很高兴您能够使用此功能。你能知道这个开发的大概日期吗?不管怎样,谢谢你的大力支持。谢谢你的回答,我会在你的api在nuget上发布后尽快对它进行测试。我从本周开始在生产中使用你的api,它的工作完全符合我的预期,干得好!