Я хочу создать архитектуру CQRS и Event Sourcing , которая будет очень дешевой, очень гибкой и очень простой.
Я хочу убедиться, что события никогда не дойдут, по крайней мере, до издателя / хранилища событий, когда-либо, потому что это то, где бизнес.
Теперь у меня есть несколько вариантов:
Azure
С лазурью я, кажется, не знаю, что использовать.
- Сервисный автобус Azure
- Функция Azure
- веб-задание Azure (я полагаю, это можно заменить функциями Azure)
- ?? (что-то еще я забыл или не знаю?)
Насколько надежны эти серверные решения Azure ??
Custom
Для этого я думаю об использовании RabbitMQ, проблема заключается в стоимости виртуальной машины для ее запуска.
В общем, я хочу:
- Возможность воспроизведения сообщений / событий в случае сбоя.
- Возможность легко добавлять подписчиков.
- Возможность выбора подписчиков для повторного воспроизведения сообщений.
- Хранилище событий должно иметь возможность хранить очень большие размеры сообщений о событиях (или как еще поместить в очередь изображение или файл ??).
- Магазин событий НИКОГДА НЕ ДОЛЖЕН быть забит или спать.
- Скорость внедрения / прототипирования будет добавлена
преимущество.
Что говорит ваш опыт?
А как насчет других альтернатив? (например: apache-kafka
)?