Проектирование архитектуры протокола клиент-серверного взаимодействия web-приложений на основе websocket

Обложка

Цитировать

Полный текст

Аннотация

Предметом исследования является проектирование архитектуры протокола клиент-серверного взаимодействия web-приложений на основе технологии WebSocket. Объектом исследования выступают механизмы двустороннего обмена данными в реальном времени и существующие решения на базе HTTP/HTTPS, SSE, SignalR, gRPC-Web, Socket.IO и WS. Автор подробно рассматривает такие аспекты темы, как формализация и унификация структуры логических каналов, маршрутизация сообщений, контроль активности соединений и автоматическое восстановление сессий. Особое внимание уделяется анализу преимуществ и ограничений каждого подхода с целью выработки требований к новой архитектуре протокола. В рамках работы выполнен сравнительный анализ существующих библиотек и технологий, что позволило выявить ключевые параметры для эффективной, масштабируемой и отказоустойчивой реализации двустороннего взаимодействия. В качестве метода проектирования использован шаблон MVCS (Модель–Представление–Контроллер–Сервис), дополненный модульной организацией библиотеки SingleSocket и аналитическим сравнением существующих технологических решений в области клиент-серверного взаимодействия. Основными выводами проведенного исследования являются разработка и реализация архитектуры протокола, обеспечивающей сбалансированный и технически обоснованный подход к двустороннему обмену данными в режиме реального времени. Особым вкладом автора в исследование темы является формализация декларативной структуры каналов с привязкой к контроллерам, внедрение конфигурируемого механизма контроля активности соединений на сервере с автоматическим завершением неактивных сессий и встроенная логика восстановления соединения на клиенте. Новизна исследования заключается в применении архитектурной модели MVCS для повышения структурированности, использовании универсального JSON-формата с маршрутизацией по каналам и модульной реализации компонентов для повторного использования и упрощенной интеграции. Предложенная архитектура служит прочной основой для создания масштабируемых, надежных и гибких современных информационных систем.

Об авторах

Алексей Алексеевич Федулов

Национальный исследовательский университет "МЭИ"

Email: afed2000@yandex.ru
ORCID iD: 0009-0003-8082-4316
аспирант; Федеральное государственное бюджетное образовательное учреждение высшего образования Национальный исследовательский университет «МЭИ»;

Список литературы

  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.

Дополнительные файлы

Доп. файлы
Действие
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») на элемент с текстом «Принять и продолжить».