1. Держать несколько соединений не нужно. Результаты прослушки редиса можно возвращать через один сокет.
3. Да, разумеется, но будет ли большое количество пользователей? Если да, то ознакомьтесь с опытом Discord --
https://blog.discord.com/how-discord-stores-billio.... БД придется менять, скорее всего.
4. По айди чата, если планируются разные виды чатов (1-1, групповой).
5. Надо смотреть по доступным ресурсам. Кэш можно ограничить по памяти, чтобы не расползался. В таком случае какие-то чаты могут вывалиться или по каждому будет закэшировано немного, но что поделать.
6. Хранить что-то в устройстве придется, чтобы показывать хотя бы старые сообщения, если нет сети, к примеру.