Event-driven
Woken by external events rather than by a person asking.
Shape:Watch → trigger → act → report
When to use it
Monitoring work: announcements, price moves, file changes, CI completion, scheduled inspection. The signature is act only when something happens, and stay quiet otherwise.
When not to
When the trigger condition cannot be expressed precisely. A false trigger can cost far more than a missed one.
How it fails
- Misfiring triggers: reading normal fluctuation as anomaly and sending a hundred alerts at midnight.
- Event storms. One event triggers work that emits events, forming a feedback loop.
- Silent failure. The watcher dies unnoticed, and "no alert" gets misread as "no change".
Design notes
Have a heartbeat and self-monitoring (the watcher must itself be watched), a cooldown window, and an explicit representation of silence — no news is not the same as good news, and the two must be distinguishable.
Origin
事件驅動是既有的系統形態,沒有單一首次公開實作可指向。