Dear lazyweb, is this possible with AMQP?
Producer sends messages to the server. Messages are not lost if the server is restarted. Messages are not lost if the producer is sending a message and the server is down.
Multiple consumers can connect to the server and receive all of the messages. Some of the consumers will be connected almost all the time. Other consumers will poll (they will be fired off by cron jobs). In both cases, the consumers should receive all of the messages that the producer has sent.
Terminology like "fanout" and "durable queues" seems to be where I need to look but I'm not sure if they're really the same concepts.