An architecture for providing an alert message based on content that may
be received as an event based feed or a time based feed in one or more
formats. The architecture includes a data collection processing module
for normalizing the content into a predefined data structure, and
indexing the content for processing large amounts of content according to
selected characteristics. A matching engine employs user queries to
associate the event based content with one or more users who have
indicated an interest in receiving alert messages associated with
selected content. The matching engine also generates the corresponding
alert messages. A poller fetches content on behalf or users at a
predefined period and generates a corresponding alert message. A delivery
interface determines which alert messages are to be sent immediately and
which alert messages are to be scheduled for later delivery. The
architecture is mirrored for scalability and backup.