Scalable Notifications Pipeline

A pluggable pipeline architecture for notifications that allows for

  1. configuration of pipeline steps via a centralized Notifications service
  2. cross-process or inter-process communication via a reusable messaging infrastructure
  3. dynamic discovery of actors in the pipeline
  4. horizontal scaling of each component in the pipeline


Steps in Notification Pipeline

The following diagram depicts the proposed steps of the notification pipeline for open edX.  The grey boxes are the messaging layer, which allows for either inter-process or intra-process communications.


Example Triggered Event

The following is an example of a triggered event in the grading infrastructure that eventually leads to downstream notifications:

Example Data Flow