Я изучаю Spring и выбираю приложение чата в качестве учебного приложения. Я хочу реализовать все самое лучшее, чтобы изучить передовой опыт.
Теперь я хочу реализовать отправку и получение сообщений. Это можно сделать с помощью websocket, но я также хочу получить ответ на это отправленное сообщение, чтобы показать клиенту, было ли его сообщение отправлено или нет. (аналогично посланнику)
Можно ли сделать это с помощью чистого веб-сокета весной или мне следует использовать веб-сокет для всего общения (отправки и получения)?
Также я хочу позже реализовать другие вещи, такие как отправка файлов, получение некоторых данных, таких как история чата и так далее. И есть тот же вопрос, что и выше. Должен ли я использовать для этого одно соединение с веб-сокетом или использовать канал веб-сокета только для одной цели, например, для общения в чате и других вещей, где не требуется общение в реальном времени, что делать с отдыхом? Какие плюсы и минусы? Спасибо в ответ за совет.




Попросите получателя отправить обратно объект квитанции, заявив, что он получил сообщение с идентификатором сообщения. Если это не вернется через определенное время, отметьте, что оно не получено.
Чтобы это решение работало, клиент должен отправить какой-то идентификатор или ссылку, какой сервер должен сохраняться. Таким образом, когда сервер отправляет обратно подтверждение, клиент сможет идентифицировать фактическое сообщение. Другой способ добиться этого - использовать вызов rest api (только для отправки нового сообщения), но это будет не в реальном времени и не лучший подход.