Manage Future Event Notification Using Node.js, Redis, and CouchDB

I'm trying to manage date/time event notifications using Node.js on the server. Is there a programming pattern that I can use and apply to JavaScript?

Currently, I'm using named setTimeouts and Redis to store a boolean value for each timeout. When the timeout fires it checks Redis for a boolean value. If it returns true, the notification executes. If the value returns false, this means the user has removed the event and there is no notification.

This solution works, but I don't believe it will be scale-able for several reasons:
1) Events could be days away. I don't trust Redis to store these event for that long.
2) There could potentially be thousands of events and I don't want setTimeouts running all over the place. Especially after the event was removed.

I know this problem has been solved, so I'm hoping someone can point me to a resource or offer up a common pattern.

Are you looking for something like node-cron?

You can use redis namesapce nodifications, yes now redis have new feautres for when key will expires its invoke the call to event .