Java 关于setStoreKeepBinary和setBackups的Apache ignite缓存配置

Java 关于setStoreKeepBinary和setBackups的Apache ignite缓存配置,java,ignite,Java,Ignite,我正在为我的缓存使用以下配置: CacheConfiguration<String, TestInfo> cacheCfg = new CacheConfiguration<>("TestInfoCache"); cacheCfg.setCacheMode(CacheMode.REPLICATED); cacheCfg.setStoreKeepBinary(true); cacheCfg.setAtomicityMo

我正在为我的缓存使用以下配置:

    CacheConfiguration<String, TestInfo> cacheCfg =
            new CacheConfiguration<>("TestInfoCache");
    cacheCfg.setCacheMode(CacheMode.REPLICATED);
    cacheCfg.setStoreKeepBinary(true);
    cacheCfg.setAtomicityMode(ATOMIC);
    cacheCfg.setBackups(1);
我只是在使用缓存做一些简单的get和put工作,如果我设置了storekeepbinary true或false,我已经阅读了文档: 似乎这个标志用于缓存存储,我应该打开它还是打开它不适合高流量

另外,对于挫折,我有3个服务器节点,为了保证数据安全和高性能,合适的数量是1还是3,我不确定,
谢谢。

setStoreKeepBinary标志的假值在某些情况下可以简化存储实现,但由于二进制对象的额外序列化和反序列化,它可能会导致性能下降。您还需要在所有节点上都有键和值类,因为在调用store时二进制文件将被反序列化


因此,如果您已经有了表中包含某些列的数据库,显然不能使用setStoreKeepBinary=true,但是如果您从头开始创建CacheStore,并且没有其他应用程序可以直接从数据库访问数据,因为数据将以BinaryObject格式存储,那么以二进制格式存储对象是有意义的,因为它在大多数情况下都会表现出更好的性能。

在我的情况下,我只是使用ignite cache将网络请求中的数据作为类对象保存到缓存中,并执行get&put操作,我是否应该将setStoreKeepBinary配置为true或设置为false,我只是感到困惑,在我的情况下,我需要这个选项,谢谢,我想说的是,你应该试着把它变成真的