如何使用Redisson在Redis Cluster中上传字节数组?

时间:2016-11-01 20:32:30

标签: java caching redis client redisson

我还没有找到关于如何上传纯字节数组的解释。 Redisson有一个RBitSet,但它管理一个位数组而不是字节。如何使用Redisson存储字节数组?

这是我的配置:

Config config = new Config();

LoadBalancer loadBalancer = new RoundRobinLoadBalancer();

config.useClusterServers()
        .setScanInterval(5000) // cluster state scan interval in milliseconds
        .addNodeAddress("192.168.0.14:6379", "192.168.0.15:6379")
        .setReadMode(ReadMode.MASTER_SLAVE)
        .setLoadBalancer(loadBalancer)
        .setPassword("bTFBx1NYYWRMTUEyNHhsCg")
        .setSlaveConnectionPoolSize(10)
        .setMasterConnectionPoolSize(10);

RedissonClient redisson = Redisson.create(config);

2 个答案:

答案 0 :(得分:2)

自2.6.0 / 3.1.0版本以来,Redisson提供了RBinaryStream个对象。它公开OutputStream对象以便更方便地使用:

byte[] content = ...

RBinaryStream stream = redisson.getBinaryStream("anyStream");

stream.set(content);
// or
OutputStream os = stream.getOuputStream();
os.write(content);

答案 1 :(得分:1)

我在github上得到了帮助。以下是如何编写字节数组:

RBucket<byte[]> bucket = redisson.getBucket("myBucket", ByteArrayCodec.INSTANCE);
byte[] myarray = ...
bucket.set(myarray);