You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Hazelcast 3.9+Spring Boot分布式Map通用配置复用方法问询

如何在Hazelcast 3.9中配置通用Map模板(XML方式)

你提到的<map name="default">其实就是Hazelcast官方提供的默认Map配置模板,之前没生效大概率是配置结构的问题。Hazelcast 3.9完全支持用这个default配置作为所有分布式Map的通用基础,让单独配置的Map只需要定义差异化参数(比如你的TTL),不用重复写一堆通用配置。

下面是针对你的场景修改后的完整XML配置,我把所有通用参数都放到了default模板里,map1和map2只保留各自不同的time-to-live-seconds:

<?xml version="1.0" encoding="UTF-8"?>
<hazelcast xsi:schemaLocation="http://www.hazelcast.com/schema/config https://hazelcast.com/schema/config/hazelcast-config-3.9.xsd" xmlns="http://www.hazelcast.com/schema/config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <group>
    <name>something</name>
    <password>something</password>
  </group>
  <properties>
    <property name="hazelcast.partition.count">83</property>
  </properties>
  <management-center enabled="true" update-interval="3">http://localhost:8081/mancenter</management-center>
  <network>
    <join>
      <multicast enabled="true"/>
    </join>
  </network>

  <!-- 通用Map配置模板:所有未单独配置的Map都会继承这些参数 -->
  <map name="default">
    <max-size policy="USED_HEAP_PERCENTAGE">20</max-size>
    <eviction-policy>LFU</eviction-policy>
    <statistics-enabled>true</statistics-enabled>
    <backup-count>0</backup-count>
    <async-backup-count>1</async-backup-count>
    <read-backup-data>true</read-backup-data>
  </map>

  <!-- map1:只定义差异化的TTL参数,其他参数继承default -->
  <map name="map1">
    <time-to-live-seconds>10800</time-to-live-seconds>
    <!--3 hours-->
  </map>

  <!-- map2:只定义差异化的TTL参数,其他参数继承default -->
  <map name="map2">
    <time-to-live-seconds>86400</time-to-live-seconds>
    <!--24 hours-->
  </map>
</hazelcast>

关键说明:

  • 继承逻辑:当你创建map1或map2时,Hazelcast会先加载default里的所有配置,然后用你单独配置的参数覆盖对应项(比如这里的TTL),其他通用参数自动复用default的设置。
  • 为什么之前的default没生效:可能是你之前把default配置放在了单独的map配置之后,或者default里的参数和单独map的参数有冲突但没正确覆盖?确保default配置放在所有单独map配置的前面,这样Hazelcast会优先加载模板。
  • 符合Schema要求:这种方式完全符合Hazelcast 3.9的XML Schema规范,不需要添加DOCTYPE或者其他不允许的属性,也完全不需要用代码配置,纯XML就能解决。

你可以启动服务后,通过Hazelcast Management Center查看每个Map的实际配置,确认通用参数是否都正确继承了。

内容的提问来源于stack exchange,提问作者neeraj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 03:56:22