Hazelcast Jet如何复用Hazelcast IMDG的MapConfig配置?
Hazelcast Jet复用IMDG MapConfig配置方法
Hazelcast Jet底层依赖内嵌的Hazelcast IMDG实例运行,你原有IMDG侧的Config配置可以直接复用,不需要重新编写。
场景1:编程式直接初始化
你之前的代码传入null作为参数,Jet会加载默认IMDG配置,自然不会生效。只需要把你写好的IMDG配置封装到JetConfig中传入即可:
// 复用你原有定义好的IMDG Config Config imdgConfig = config(); // 构造Jet配置,绑定IMDG配置 JetConfig jetConfig = new JetConfig(); jetConfig.setHazelcastConfig(imdgConfig); // 传入配置初始化Jet实例 JetInstance jet = Jet.newJetInstance(jetConfig); // 此时获取的t1 Map会自动沿用你配置的备份数、TTL、PersonMapStore规则 IMap<String, Person> map2 = jet.getMap("t1");
场景2:Spring环境下Bean注入
你原有声明的IMDG Config Bean可以直接复用,额外添加Jet相关Bean即可:
@Bean public JetConfig jetConfig(Config imdgConfig) { JetConfig jetConfig = new JetConfig(); jetConfig.setHazelcastConfig(imdgConfig); return jetConfig; } @Bean public JetInstance jetInstance(JetConfig jetConfig) { return Jet.newJetInstance(jetConfig); }
注意:Jet 4.0及以上版本支持自动读取classpath下的hazelcast.xml/hazelcast.yaml配置,如果你原有配置是写在配置文件而非代码中的,直接把配置文件放到classpath下即可生效,无需额外编码。
内容的提问来源于stack exchange,提问作者vivek
相关产品推荐
相关产品推荐

