Please note: this blog has been migrated to a new location at https://jakesgordon.com. All new writing will be published over there, existing content has been left here for reference, but will no longer be updated (as of Nov 2023) Listen on a socket (e.g. a web server) Subscribe to a queue (e.g. a resque worker) Poll a DB job table (e.g. a DelayedJob) Much of the time you will use an appropriate 3