Does anyone know a good, low overhead out-of-process message queue, that's lightweight enough that it can be useful for communicating between processes on the same machine, but if necessary it can scale beyond it? In case of a single-machine product that comprises of several services, a message queue can sometimes be useful for pull model, but adding RabbitMQ to the stack makes installation and ops much more complex…
Reliable and durable? Emphatically not Redis, and at that point you probably want to just start looking at SQS.
(I've had good luck shipping products as docker-compose files, these days. Even to fairly backwards clients.)