Designing the architecture of the client-server interaction protocol for web applications based on websocket

Cover Page

Cite item

Full Text

Abstract

The subject of the research is the design of the architecture of the client-server protocol for web applications based on the WebSocket technology. The object of the study is the mechanisms for bidirectional real-time data exchange and existing solutions based on HTTP/HTTPS, SSE, SignalR, gRPC-Web, Socket.IO, and WS. The author examines in detail aspects of the topic such as formalization and unification of the logical channel structures, message routing, connection activity monitoring, and automatic session recovery. Special attention is given to analyzing the advantages and limitations of each approach to develop requirements for a new protocol architecture. The work includes a comparative analysis of existing libraries and technologies, which helped identify key parameters for effective, scalable, and fault-tolerant implementation of bidirectional interaction. The design method used is the MVCS (Model-View-Controller-Service) pattern, supplemented by the modular organization of the SingleSocket library and an analytical comparison of existing technological solutions in client-server interaction. The main conclusions of the conducted research are the development and implementation of a protocol architecture that provides a balanced and technically justified approach to bidirectional real-time data exchange. A significant contribution of the author to the research topic is the formalization of the declarative structure of channels tied to controllers, the implementation of a configurable connection activity monitoring mechanism on the server with automatic termination of inactive sessions, and the built-in logic for connection recovery on the client. The novelty of the research lies in the application of the MVCS architectural model to enhance structuring, the use of a universal JSON format with channel routing, and the modular implementation of components for reuse and simplified integration. The proposed architecture serves as a solid foundation for creating scalable, reliable, and flexible modern information systems.

References

  1. Sharma N., Agarwal R. HTTP, WebSocket, and SignalR: A Comparison of Real-Time Online Communication Protocols // Mining Intelligence and Knowledge Exploration: 9th International Conference, MIKE 2023, Proceedings. – Cham: Springer, 2023. – С. 128-135.
  2. Murley P., Ma Z., Mason J., Bailey M., Kharraz A. Websocket adoption and the landscape of the real-time web // WWW '21: Proceedings of the Web Conference 2021. – New York: ACM, 2021. – С. 1192–1203.
  3. Песошина Н.Т., Нуриев М.Г., Минязев Р.Ш. Разработка корпоративного веб-чата с использованием библиотеки SignalR // Международный научно-исследовательский журнал. – 2024. – № 11. – С. 1-15.
  4. Kaminski L., Kozlowski M., Sporysz D., Wolska K., Zaniewski P., Roszczyk R. Comparative Review of Selected Internet Communication Protocols // Foundations of Computing and Decision Sciences. – 2023. – № 48(1). – С. 39-56.
  5. Morchid A., Et-taibi B., Oughannou Z., Alami R.E., Qjidaa H., Jamil M.O., Boufounas E., Riduan M. Abid IoT-enabled smart agriculture for improving water management: A smart irrigation control using embedded systems and Server-Sent Events // Scientific African. – 2025. – № 27. – С. 1-17.
  6. Price M.J. Apps and Services with .NET. – 2-е изд. – Birmingham: Packt Publishing, 2023. – 765 с.
  7. Karam S.J., Abdulrahman B.F. Using Socket.io Approach for Many-to-Many Bi-Directional Video Conferencing // Al-Rafidain Journal of Computer Sciences and Mathematics. – 2021. – № 16(1). – С. 81-86.
  8. Алпатов А.Н., Юров И.И. Алгоритм и программная реализация совместного редактирования графических схем в режиме реального времени с использованием библиотеки Socket.IO // Программные системы и вычислительные методы. 2024. № 1. С. 10-19.
  9. Лясковский В.Л., Федулов А.А. Анализ применимости и потенциальной полезности использования шаблона проектирования модель-представление-контроллер-сервис при разработке автоматизированных систем сбора и обработки цифровых отчётных документов для промышленных предприятий // ИТ-Стандарт. – 2024. – № 2(39). – С. 4-13.
  10. Василевский С.М., Шедльбауэр А.А., Морозов Д.А. Веб-приложения реального времени // Сборник материалов VII-й Всероссийской научно-практической конференции. – Курск: Юго-Западный государственный университет, 2023. – С. 174-178.

Supplementary files

Supplementary Files
Action
1. JATS XML

Согласие на обработку персональных данных с помощью сервиса «Яндекс.Метрика»

1. Я (далее – «Пользователь» или «Субъект персональных данных»), осуществляя использование сайта https://journals.rcsi.science/ (далее – «Сайт»), подтверждая свою полную дееспособность даю согласие на обработку персональных данных с использованием средств автоматизации Оператору - федеральному государственному бюджетному учреждению «Российский центр научной информации» (РЦНИ), далее – «Оператор», расположенному по адресу: 119991, г. Москва, Ленинский просп., д.32А, со следующими условиями.

2. Категории обрабатываемых данных: файлы «cookies» (куки-файлы). Файлы «cookie» – это небольшой текстовый файл, который веб-сервер может хранить в браузере Пользователя. Данные файлы веб-сервер загружает на устройство Пользователя при посещении им Сайта. При каждом следующем посещении Пользователем Сайта «cookie» файлы отправляются на Сайт Оператора. Данные файлы позволяют Сайту распознавать устройство Пользователя. Содержимое такого файла может как относиться, так и не относиться к персональным данным, в зависимости от того, содержит ли такой файл персональные данные или содержит обезличенные технические данные.

3. Цель обработки персональных данных: анализ пользовательской активности с помощью сервиса «Яндекс.Метрика».

4. Категории субъектов персональных данных: все Пользователи Сайта, которые дали согласие на обработку файлов «cookie».

5. Способы обработки: сбор, запись, систематизация, накопление, хранение, уточнение (обновление, изменение), извлечение, использование, передача (доступ, предоставление), блокирование, удаление, уничтожение персональных данных.

6. Срок обработки и хранения: до получения от Субъекта персональных данных требования о прекращении обработки/отзыва согласия.

7. Способ отзыва: заявление об отзыве в письменном виде путём его направления на адрес электронной почты Оператора: info@rcsi.science или путем письменного обращения по юридическому адресу: 119991, г. Москва, Ленинский просп., д.32А

8. Субъект персональных данных вправе запретить своему оборудованию прием этих данных или ограничить прием этих данных. При отказе от получения таких данных или при ограничении приема данных некоторые функции Сайта могут работать некорректно. Субъект персональных данных обязуется сам настроить свое оборудование таким способом, чтобы оно обеспечивало адекватный его желаниям режим работы и уровень защиты данных файлов «cookie», Оператор не предоставляет технологических и правовых консультаций на темы подобного характера.

9. Порядок уничтожения персональных данных при достижении цели их обработки или при наступлении иных законных оснований определяется Оператором в соответствии с законодательством Российской Федерации.

10. Я согласен/согласна квалифицировать в качестве своей простой электронной подписи под настоящим Согласием и под Политикой обработки персональных данных выполнение мною следующего действия на сайте: https://journals.rcsi.science/ нажатие мною на интерфейсе с текстом: «Сайт использует сервис «Яндекс.Метрика» (который использует файлы «cookie») на элемент с текстом «Принять и продолжить».