abstract producer and consumer interface to support other message brokers
stevehu opened this issue · comments
solace and rabbitmq first.
consumer side interface:
public interface AggregateEvents {
CompletableFuture subscribe(String subscriberId, Map> aggregatesAndEvents, SubscriberOptions subscriberOptions, Function> handler);
}
One producer, framework suggest to use cdc, so the user service will process database insert/update/delete only.
We can create a abstract interface for producer for special case.
Added an interface for a produce event to message broker.
Normally, user recommend to use framework provided cdc service to event produce.
But in case user want handle event produce by themselves, implement interface to produce event to message broker
My idea is to abstract this producer and consumer to interface and use service.yml to wire in specific implementations. Once you completed something, we can have a discussion on it. It is not necessary to be completed to start a conversation.