Я реализую инфраструктуру событий домена, но проект не позволяет использовать инфраструктуру обмена сообщениями (клиент финансовых услуг), поэтому нашел альтернативу в Hazelcast Topics и ExecutorService,
Но проблема в том, что при работе в кластере сообщение должно быть доставлено слушателям, которые будут работать в кластере, поэтому для кластера из 2 у нас есть один и тот же слушатель, работающий в 2 jvm, и сообщение потребляется дважды и обрабатывается, предположим, что Предполагается, что событие домена выполняет какую-то неидемпотентную операцию, такую как кредитование некоторых баллов лояльности, если я явно не поддерживаю трассировку события домена, на которое воздействовали, и не проверяю его каждый раз, когда я получаю событие, я в конечном итоге зачисляю его дважды, «любое предложение, реализующее это без необходимости писать эти котельные плиты, возможно, на инфраслое», или существует известный шаблон для такой реализации.
Изменить: тем временем я также оцениваю Hazelcast ExecutorService, как было предложено. Здесь