I have the following situation. I am thinking of using RabbitMQ for chat inside my iPhone application. iPhone application is connected to the server thru socket server. The socket server passes the information from iPhone to the server and vice versa. I am not sure how could I make this communication path works – iPhone -> Socket Server -> RabbitMQ server.  I understand that I can connect the client directly to RabbitMQ server using client library you provided. I am not sure how could I pass the message thru socket server.  Socket server basically accepts the incoming message from iPhone and route the message to appropriate server based on header information in the incoming message. It does the same thing when a server wants to communicate to the client thru socket server. Socket server accepts only binary data.  Is it a overkill to use RabbitMQ for this purpose? If I use XMPP like ejabbberd, I would still have the same issue of routing the message thru socket server.  Any help is much appreciated. Thanks!