Redis redis-2.8.12 on Linux.
I have a pub/sub setup with few thousand clients subscribed to the same channel. As per networking.c/addReply() function, a message from a publish call is copied to Client's buf array and if buf is full then to a List with malloc. This creates duplicate copies of the sent message and is a memory problem if client's are not reading fast enough.
Is my understanding correct? Is there a way to use "channel" based buffers than client based, esp when all clients are subscribed to a single channel?