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

OSCHINA-MIRROR/mirrors-Laravel-Chat

Клонировать/Скачать
readme.md 3.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 30.06.2025 14:54 c51537c

Gopusher Chat

Это приложение для чата, демонстрационный адрес: https://chat.yadou.net, поддерживает одиночные и групповые чаты. В текущем демо по умолчанию пользователи добавляются только в группу 1. Конкретная логика реализации описана в исходном коде.

Вся бизнес-логика (логический и роутинговый слои) реализована с использованием Laravel, а для поддержки долгосрочных соединений используется Gopusher Comet (слоя подключения). Помимо Laravel, используются следующие зависимости:

  • phpctx/ctx — фреймворк для модульной организации сервисных служб
  • predis/predis — библиотека для Redis

Установка

  1. Сначала необходимо установить Gopusher Comet и настроить его

  2. Скачайте Chat и установите его

    git clone https://github.com/Gopusher/laravel-chat.git
    Настройте .env
    composer install

Дополнительно

  • Ранее был реализован один вариант с использованием собственного фреймворка (уже устаревшего), но было решено использовать Laravel, так как он более популярен и удобен для ознакомления. Оба варианта зависят от Gopusher Comet для поддержки долгосрочных соединений с клиентами.
  • Gopusher Comet — это открытый, поддерживающий распределённое развертывание, универсальный слой подключения для долгосрочных соединений, который управляет клиентскими соединениями, поддерживает кластеризацию и предоставляет API для разработчиков.
  • Помимо использования в чат-приложениях, он может применяться для веб-сообщений, игр и других сценариев с долгосрочными соединениями. Документация для разработчиков доступна по адресу https://github.com/Gopusher/comet/wiki.
  • Поскольку бизнес-логика часто очень специфична и требования к каждому продукту различны, этот исходный код не включает красивый клиентский интерфейс. Он предназначен для демонстрации того, как можно использовать Comet для создания распределённого чата. Внутри есть логика распределённого маршрутизатора, но слои маршрутизации и бизнес-логики не разделены слишком детально.

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

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

1
https://api.gitlife.ru/oschina-mirror/mirrors-Laravel-Chat.git
git@api.gitlife.ru:oschina-mirror/mirrors-Laravel-Chat.git
oschina-mirror
mirrors-Laravel-Chat
mirrors-Laravel-Chat
master