Yeah, this is one of the reasons for POSIX MQ. We settled on SysV MQ because it's present on OS X, but there are quite a few things that suck about them.

Yeah, go for that. The producer takes a command-line argument with the size of the its own buffer, it defaults to 8kb (Linux default). Correction: per message size is set to `64kb` on our app servers, however, the total queue size is set to `1mb`.