1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/xi_fan-chatRoom

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 3.8 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 27.11.2024 20:08 36b8cbf

饭团聊天室

Внешнее развёртывание

http://chatroom.lixifan.cn/index.html

Технологический стек

  • springboot;
  • netty, в качестве коммуникационного модуля используется netty, применяется протокол связи websocket; [модуль чата реализован в виде компонента, который можно напрямую импортировать в любой проект]
  • docker, для удобства развёртывания здесь используется метод развёртывания docker;
  • nginx, обратный прокси;
  • html&css&js, фронтенд сделан на скорую руку, несерьёзно.

Особенности дизайна

  • Коммуникационный модуль реализован как компонент и отделён от реального проекта, другие проекты могут свободно его использовать;
  • Используется механизм распределения протоколов, после получения протокола клиента он автоматически находит соответствующий метод в фасаде и запускает его с помощью отражения;
  • Добавлена аннотация Api, при запуске проекта создаётся сопоставление между протоколом и методом, что обеспечивает использование механизма распределения протоколов;
  • Механизм мониторинга сердцебиения: клиент периодически отправляет пакеты ping протокола, и если соединение прерывается, сервер разрывает соединение после того, как в течение определённого времени не получает пакеты ping.

Представление интерфейса

Вкратце о представлении интерфейса — это произвольная HTML-страница.

Интерфейс входа в систему, здесь есть два конца, вы можете войти, введя псевдоним, а затем начать чат.

После выхода из системы представление выглядит следующим образом:

После выхода из системы мы начинаем мониторинг.

Как запустить ide

  • Импортируйте chatRoom в idea, File->Project Structure->нажмите + в модулях, чтобы импортировать компонент сокета в lib;
  • Нажмите «Запустить», чтобы запустить сервер, порт прослушивания можно изменить в application.properties в ресурсах;
  • Клиентский код находится в chatRoomWeb, просто перейдите по ссылке, чтобы получить к нему доступ.

Анализ соответствующих статей

Анализ и реализация общего компонента анализа.

Внешнее развёртывание

Вы можете следить за моим публичным аккаунтом, чтобы проконсультироваться со мной.

Публичный аккаунт.jpg

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/xi_fan-chatRoom.git
git@api.gitlife.ru:oschina-mirror/xi_fan-chatRoom.git
oschina-mirror
xi_fan-chatRoom
xi_fan-chatRoom
master