Я работаю с Storm, и это нормально для многих случаев использования. Недавно я просмотрел Trident, что является абстракцией уровня Storm на высоком уровне. Он поддерживает ровно-разовую обработку и упрощает обработку с учетом состояния.
Но теперь мне интересно.. Почему я не могу использовать Trident вместо Storm?
То, что я читал до сих пор:
- Trident обрабатывает сообщения в пакетах, поэтому время передачи может быть больше.
- Trident еще не способен обрабатывать циклы в топологиях.
Есть ли другие недостатки при использовании Trident вместо Storm? Потому что сейчас я считаю, что недостатки, перечисленные выше, являются незначительными.
Какие варианты использования не могут быть реализованы с помощью Trident?
Aftermath:
Поскольку я задал вопрос, моя компания решила сначала отправиться на Трезубец. Когда будут проблемы с производительностью, мы будем использовать чистый шторм. К сожалению, это не активное решение, оно просто стало поведением по умолчанию (в то время меня не было).
Их предположение заключалось в том, что в большинстве случаев мы нуждаемся в состоянии или только однократной обработке, или нам это понадобится в ближайшем будущем. Я понимаю их аргументацию, потому что переход от Шторма к Трезубцу или обратно - непростая трансформация, но, по моему личному мнению, концепция обработки потока без состояния не была понята всеми, и это было основной причиной использования Trident.