Поэтому я сделал быстрое приложение чата, которое сначала запрашивает php файл для загрузки старых сообщений из mysql adatbase, а затем я настраиваю чат реального времени с помощью socket.io
Всякий раз, когда пользователь отправляет сообщение, он запрашивает файл php, который проверяет, является ли текст действительным, затем я делаю шифрование и сохраняю новое сообщение в зашифрованной версии в базе данных, и я отправляю исходное сообщение с socket.io правильному пользователю
Что было бы хорошим способом хранения пользовательских данных, которые меняются? (Ник, фотография профиля)
Текущий быстрый массив, в котором хранятся сообщения, выглядит следующим образом:
....| chatRooms
........| chatRoomId
........| messages(array)
............| userId
............| message
Было бы неплохо хранить псевдонимы с сообщениями, которые я знаю, потому что сообщения становятся кэшированными, и если пользователь завершает работу и перезагружает приложение, кешированный псевдоним будет показывать старые сообщения, а новый - для новых сообщений.
Что вы предлагаете парням?
Поскольку вы уже используете userId, было бы очевидно, что вам нужен новый объект. Пользователи с идентификатором, псевдонимом, рисунком профиля и т.д....
Если ваша цель состоит в том, чтобы ограничить запросы и загружать новые профили только тогда, когда это необходимо, вы можете транслировать сообщение с сервера, указывающее, какой userId изменил данные, поскольку вы используете веб-узлы. Это делается для того, чтобы каждый раз перезагружать все данные (проблема, конечно, изображений профиля)