Hazelcast缓存创建

Hazelcast缓存创建,hazelcast,Hazelcast,在Hazelcast中,我使用客户机-服务器模式。集群中将有大约10个节点,并且将有多个客户端从不同的应用程序实例访问同一缓存。你能帮我做一下吗 在Hazelcast的客户机-服务器模式下,这是创建缓存的正确方法。它是通过编程方式还是通过声明方式?。我的应用程序中有多个可用的缓存,它们在某些属性上有所不同(如逐出配置等)。每个缓存将由我的应用程序中的一个单独的对象实例访问(即一个对象实例将只使用一个缓存) 一种方法比另一种方法有什么优势吗?或者两者都一样 谢谢 JK@JK_007,Hazelca

在Hazelcast中,我使用客户机-服务器模式。集群中将有大约10个节点,并且将有多个客户端从不同的应用程序实例访问同一缓存。你能帮我做一下吗

  • 在Hazelcast的客户机-服务器模式下,这是创建缓存的正确方法。它是通过编程方式还是通过声明方式?。我的应用程序中有多个可用的缓存,它们在某些属性上有所不同(如逐出配置等)。每个缓存将由我的应用程序中的一个单独的对象实例访问(即一个对象实例将只使用一个缓存)

  • 一种方法比另一种方法有什么优势吗?或者两者都一样

  • 谢谢
    JK

    @JK_007,Hazelcast可以通过声明(XML)或编程(API)进行配置,也可以使用两者的组合。这两种方法都是创建缓存的正确方法

    选择实际上取决于您的用例。声明方式是定义配置的静态方式。对于要在应用程序中使用的每个分布式数据结构,您可以提到单独的配置集。例如,您的hazelcast.xml中的以下代码片段创建了一个名为
    simpleMap
    的IMAP以及下面提到的配置

    <map name="simpleMap">
        <backup-count>0</backup-count>
        <max-idle-seconds>0</max-idle-seconds>
        <eviction-policy>LRU</eviction-policy>
        <time-to-live-seconds>30</time-to-live-seconds>
        <max-size>3000</max-size>
        <eviction-percentage>30</eviction-percentage>
        <merge-policy>com.hazelcast.map.merge.PutIfAbsentMapMergePolicy</merge-policy>
    </map>
    
    
    0
    0
    LRU
    30
    3000
    30
    com.hazelcast.map.merge.PutIfAbsentMapMergePolicy
    
    您还可以从多个XML配置片段中定义hazelcast XML配置文件。为了做到这一点,您可以使用
    元素加载不同的XML配置文件

    如果您需要在运行时定义缓存(例如,基于某些条件)和测试,那么编程方式非常有用。您可以将其视为hazelcast.xml静态特性的解决方案


    对于hazecast xml中的每个标记,您可以在
    Config
    对象中找到其编程等效项。总而言之,如果您需要动态功能(添加/修改配置),请使用编程方式。如果您非常确定在运行时不需要执行任何操作,您可以使用声明方式。

    @JK_007,如果它回答了您的问题,或者您觉得这很有帮助,请将其标记为答案。