当前位置: 首页 > 知识库问答 >
问题:

使用HazelcastClient在ClientConfig中以编程方式为IMap配置TTL、最大大小和逐出策略

解阳荣
2023-03-14

我正在使用Hazelcast本机java客户端连接远程Hazelcast集群。下面是代码,我想从java客户端为以下imap tranmap配置TTL、最大大小、逐出策略。

谁能建议一下如何从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");

共有1个答案

裴韬
2023-03-14

如果您不想重新配置现有映射,而只是为将要使用的映射添加一个新配置,那么这是可行的

    HazelcastInstance client = HazelcastClient.newHazelcastClient();

    Config config = client.getConfig();


    config.addMapConfig(new MapConfig()
            .setName("foo")
            .setTimeToLiveSeconds(10));

请记住,在配置之前不要创建映射,因此getmap调用应该在添加配置之后。

 类似资料:
  • 问题内容: 有没有一种方法可以通过编程而不是作为vm参数来设置最大Java堆大小? 就像是: 问题答案: 不适用于任何Hotspot JVM。只能在命令行上指定JVM堆参数,然后在JVM的生存期内对其进行固定。 使用Hotspot Java实现,“更改”应用程序堆大小的唯一方法是使用不同的命令行参数在新的JVM中重新启动它。 (我隐约记得,其他一些供应商的JVM 确实 允许在运行的JVM中更改某些

  • 在hazelcast映射配置中,如果我们将逐出策略设置为“无”,并使用最大空闲秒数、生存时间秒数,如下所示, 有人能解释一下,在这种情况下,最大尺寸是否有效?

  • 问题内容: 我想设置in 的宽度和高度。将不存在。它是在这里创建的: 它被放置在这里: 所以基本上我所说的方法很多次,并填写我与封闭在。我需要将此高度设置为DP而不是像素,以便在所有设备上看起来都一样!!! 问题答案: 您需要将值转换为dps,可以使用以下函数进行操作: 然后,要将大小设置为px值,可以执行以下操作: (更改您所在的容器) 编辑:Kotlin版本 转换成Px的函数可以这样写在kot

  • 我有一个应用程序将失败,如果值设置为低于256k,则Xss堆栈大小将失败,并出现堆栈溢出错误。不幸的是,这与库com有关。太阳组织。阿帕奇。当实例化非常大的XSD验证器时。 现在,的预定义值是我们在某些环境中一直在使用的,并且知道这是导致问题的原因。 出于日志记录的目的,我想知道是否可以通过Java本身获得最大堆栈大小,并在初始化时抛出一个错误,指示提供的堆栈大小不足,而不是让应用程序部署,然后尝

  • 我使用的是一个自定义视图,我添加了滚动条,如下所示: 现在有没有办法找出滚动条的像素厚度?对于垂直滚动条,我想找出宽度,对于水平滚动条,我想找出高度,两者都以像素为单位。 有没有办法通过编程实现这一点?

  • 问题内容: 我试图仅通过使用和此参考来配置和设置Log4j2 。我使用的代码如下: 注意 它扩展了默认情况下已经配置的控制台 它尝试向根记录器添加滚动文件追加器 我得到以下异常: 如果我在上面的代码之后注释掉该代码,它可以工作,但似乎缺少配置滚动文件附加程序的内容。我应该怎么做才能解决这个问题? 问题答案: 在 log4j 2.x中, 您必须以这种方式指定日期格式 标记格式的开始 表示它是日期格式