Computação orientada por eventos é um modelo de computação em que os programas executam trabalhos em resposta a ocorrências identificáveis que têm significado para o hardware ou software do sistema. Os programas controlados por eventos são frequentemente usados para automatizar sistemas e fornecer serviços em ambientes máquina a máquina (M2M).
Os dois componentes integrais de uma arquitetura orientada por eventos (EDA) são criadores de eventos e consumidores de eventos. Os criadores iniciam eventos e os consumidores recebem informações sobre os eventos e podem estar envolvidos com o processamento relacionado a eles. Na Internet das coisas (IoT), um grande número de criadores e consumidores normalmente trocam informações sobre status e respostas em tempo quase real.
Evite que os consumidores tipicamente assinem algum tipo de gerenciador de eventos middleware. Quando o gerente recebe a notificação de um evento de um criador, ele encaminha esse evento a todos os consumidores registrados. O benefício de uma arquitetura orientada a eventos é que ela permite que um grande número de criadores e consumidores troquem informações de status e resposta em tempo quase real.
Aplicações orientadas a eventos são projetadas para detectar eventos que têm um significado particular para o ambiente que servem. A maioria da computação orientada por eventos é baseada em regras de ação de condição de evento (regras ECA) que especificam que código executar (que ação tomar) quando um determinado evento ocorre e as condições estipuladas existem. Os sistemas controlados por eventos podem usar a consciência do contexto para orientar as respostas aos eventos, com base em condições ambientais variáveis.
If This Then That (IFTTTT, pronunciado para rimar com "presente") é um serviço online popular que automatiza tarefas baseadas na Web para que, quando ocorrem eventos especificados pelo usuário, as tarefas de acompanhamento sejam acionadas e tratadas. IFTTT divide as tarefas em "Fazer receitas", que são ações simples como "escurecer as luzes", iniciadas por um toque no smartphone, e "Se receitas", que permitem aos usuários criar cadeias de declarações condicionais simples, que são acionadas com base em mudanças em outros serviços da Web.