领先一步
VMware 提供培训和认证,以加速您的进步。
了解更多我代表 Spring Integration 社区宣布 Spring 集成 Hazelcast 扩展的第二个里程碑版本 spring-integration-hazelcast.1.0.0.M2
,该版本已在 里程碑仓库 中提供。
该项目已经存在一段时间了,自从之前的 里程碑版本 1 以来一直活动不多,直到最近才获得了足够的社区关注,从而保证了此次发布。因此,首先要感谢您以及社区的贡献!
此里程碑版本中包含的一些功能亮点
如果您需要选举领导者(例如,对于高可用性消息消费者,其中只有一个节点应接收消息),您只需要创建一个 LeaderInitiator。
@Bean
public HazelcastInstance hazelcastInstance() {
return Hazelcast.newHazelcastInstance();
}
@Bean
public LeaderInitiator initiator() {
return new LeaderInitiator(hazelcastInstance());
}
然后,当一个节点被选为领导者时,它将向所有应用程序监听器发送 OnGrantedEvent 事件。有关如何使用这些事件来控制消息传递端点的更多信息,请参阅 Spring 集成参考手册。
HazelcastCacheWritingMessageHandler
现在可以通过 cacheExpression
属性在运行时根据传入的 Message
解析 DistributedObject
。支持的类型包括 IMap
、MultiMap
、ITopic
、ISet
或 IList
。
@Bean
public IMap<Integer, HazelcastIntegrationTestUser> distMap() {
return testHzInstance().getMap("Distributed_Map1");
}
@Bean
@ServiceActivator(inputChannel = "distMapChannel")
public HazelcastCacheWritingMessageHandler hazelcastMessageHandler() {
HazelcastCacheWritingMessageHandler handler =
new HazelcastCacheWritingMessageHandler();
handler.setDistributedObject(distMap());
handler.setKeyExpression(PARSER.parseExpression("payload.id"));
handler.setExtractPayload(true);
return handler;
}
HazelcastClusterMonitorMessageProducer
允许监听对集群执行的修改。这是一个事件驱动的通道适配器,它监听相关的成员资格、分布式对象、迁移、生命周期和客户端事件。
<int-hazelcast:cm-inbound-channel-adapter
channel="monitorChannel"
hazelcast-instance="instance"
monitor-types="MEMBERSHIP, DISTRIBUTED_OBJECT" />
<bean id="instance" class="com.hazelcast.core.Hazelcast"
factory-method="newHazelcastInstance">
<constructor-arg>
<bean class="com.hazelcast.config.Config" />
</constructor-arg>
</bean>
在直接发布 1.0.0.RELEASE
版本之前,我们希望听到社区的任何反馈,因此,请随时通过任何可用的沟通渠道与我们联系!