Сравнение реактивного программирования и обработки сложных событий
Я читал о реактивном программировании и могу понять модель программирования и то, как мы можем использовать такие шаблоны, как CQRS, для создания микросервисов и приложений. Чем это отличается от устаревшего подхода к комплексной обработке событий, используемого традиционным промежуточным программным обеспечением.
1 ответ
Можно сравнить яблоки и апельсины да. И использование слова "наследие" для апельсинов, вероятно, не подходит. Реактивное программирование - это API-интерфейсы общего назначения для потоков данных, push, pull, многопоточности, противодавления и т. Д., Например, предоставляемые библиотекой актеров. CEP предназначен для анализа событий и предоставляет язык (SQL, правила, XML), который позволяет легко и кратко обнаруживать ситуации в потоке событий. CEP обеспечивается механизмом CEP. Например, чтобы найти событие прохождения поезда без события остановки поезда в течение 10 секунд, вы можете выразить обнаружение этой ситуации в механизме CEP, используя всего 60 символов. Если вы пишете код на языке программирования для обнаружения такой ситуации, скажем, на Java, то, вероятно, он превышает 20 строк кода и его гораздо сложнее читать. Движок CEP будет делать больше для вас, например, очень быстро сопоставлять события с правилами, к которым они применяются. Это для случая, когда у вас есть много ситуаций, чтобы обнаружить. Двигатели CEP и реактивное программирование вполне могут использоваться вместе и полностью взаимодействовать друг с другом и совсем не обеспечивают одинаковую функциональность.