Только Websocket vs Websocket с отдыхом для отправки сообщений

Я изучаю Spring и выбираю приложение чата в качестве учебного приложения. Я хочу реализовать все самое лучшее, чтобы изучить передовой опыт.

Теперь я хочу реализовать отправку и получение сообщений. Это можно сделать с помощью websocket, но я также хочу получить ответ на это отправленное сообщение, чтобы показать клиенту, было ли его сообщение отправлено или нет. (аналогично посланнику)

Можно ли сделать это с помощью чистого веб-сокета весной или мне следует использовать веб-сокет для всего общения (отправки и получения)?

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

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
0
63
1

Ответы 1

Попросите получателя отправить обратно объект квитанции, заявив, что он получил сообщение с идентификатором сообщения. Если это не вернется через определенное время, отметьте, что оно не получено.

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

Sreekar Mouli 21.08.2021 15:24

Другие вопросы по теме