【问题标题】:Programmatically configure TTL, Max Size , Eviction policy for IMap in ClientConfig using HazelcastClient使用 HazelcastClient 在 ClientConfig 中以编程方式为 IMap 配置 TTL、Max Size 和 Eviction 策略
【发布时间】:2019-04-10 09:23:00
【问题描述】:

我正在使用 Hazelcast 本机 Java 客户端连接远程 Hazelcast 集群。 下面是代码,我想从java客户端为IMap tranMap以下配置TTL, Max Size, Eviction policy

谁能建议如何从 hazelcast 客户端为每个 IMap 设置此参数。 我知道如何在 hazelcast.xml 的集群级别配置它。但是对于我的应用程序用例,我必须在用于创建 HazelcastClient 实例的 ClientConfig 对象中以编程方式对其进行配置。

    ClientConfig config = new ClientConfig();
    String[] addresses = { "192.178.11.01:5701", "192.178.30.18:5702" };
    config.getNetworkConfig().addAddress(addresses);
    HazelcastInstance hazelcastInstance = HazelcastClient.newHazelcastClient(config);
    IMap<Integer, Transaction> map = hazelcastInstance.getMap("tranMap");

【问题讨论】:

    标签: hazelcast hazelcast-imap


    【解决方案1】:

    如果您不想重新配置现有地图,而只是为将要使用的地图添加新配置,这是可行的

        HazelcastInstance client = HazelcastClient.newHazelcastClient();
    
        Config config = client.getConfig();
    
    
        config.addMapConfig(new MapConfig()
                .setName("foo")
                .setTimeToLiveSeconds(10));
    

    记得在配置之前不要创建地图,所以getMap应该在你添加配置之后调用。

    【讨论】:

      【解决方案2】:

      这已被请求,https://github.com/hazelcast/hazelcast/issues/14750,但尚未实现

      【讨论】:

      • 顺便说一句,如果您不想重新配置现有地图,而只是为要使用的地图添加新配置,这是可行的。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-15
      • 2020-12-13
      • 1970-01-01
      • 1970-01-01
      • 2019-11-15
      相关资源
      最近更新 更多