[rabbitmq-discuss] behavior when erlang processes exhausted

Matthias Radestock matthias at rabbitmq.com
Thu May 26 14:19:48 BST 2011


Aaron Westendorf wrote:
> We're very likely to, especially with regards to channels. At the 
> moment most of our traffic is routed over one host, and all the 
> applications use at least a few queues each. Where we're really
> likely to use Erlang procs is for channels, as we use them liberally
> both on their own and via haigha's ChannelPool.

ok. It's probably worth confirming that channels are indeed the culprit
by counting them with 'rabbitmqctl list_channels'.

> In this case, where messages were piling up and it's possible that
> ChannelPools were growing large because transactions were slowing
> down, we could have hit our process limit quite readily. Adding an
> optional cap to the pool size is a feature I intend to add.

Processes have a memory footprint. That's generally quite small when 
they are hibernating, but once you get into the millions you might 
easily lose a few hundred meg that way.

In summary, it's ok to create channels liberally, just not *too* 
liberally :)



More information about the rabbitmq-discuss mailing list