我试图了解在更新mongodb时使用messagelisteners的最有效方法是什么。我有以下代码示例:
@Bean
public MessageListenerContainer messageListenerContainer(MongoTemplate template) {
MessageListenerContainer messageListenerContainer = new DefaultMessageListenerContainer(template);
messageListenerContainer.start();
ChangeStreamRequest<TokenRequestorInfoEntity> request = ChangeStreamRequest.builder()
.collection("Streamline_Trid")
.publishTo(getTridListener())
.build();
try {
Subscription subscription = messageListenerContainer.register(request, TokenRequestorInfoEntity.class);
}
catch(MongoTimeoutException | MongoExecutionTimeoutException | MongoSocketClosedException | MongoSocketReadTimeoutException | MongoSocketOpenException | UncategorizedMongoDbException e ) {
logger.error("MongoDB Connection failure while registering listener:"+e.getMessage());
}
catch(Exception ex) {
logger.error("MongoDB Connection failure:"+ex.getMessage());
}
return messageListenerContainer;
}
在多收集场景中,是否应该创建多个消息侦听器,在其中更新多个缓存?或者通常每个应用程序只创建一个消息侦听器。
暂无答案!
目前还没有任何答案,快来回答吧!