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

OSCHINA-MIRROR/9miao-firefly

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

#firefly

Главная страница: http://9miao.com

Что такое Firefly Game Server Framework?

Firefly — это бесплатная, открытая, стабильная и быстро развивающаяся игровая серверная платформа, поддерживающая «горячую замену» данных. Написана на Python с использованием фреймворка Twisted. Основной идеей дизайна Firefly является возможность концентрации разработчиков на клиентской части. Включает разработку фреймворка и базовых игровых сервисов, таких как кэширование базы данных, что позволяет экономить время разработчиков игр и действительно сосредотачиваться на логике игры. Может использоваться для создания пользовательских распределённых решений, требует лишь изменения конфигурационного файла.

Основные преимущества:

  • Однопоточный многопроцессорный архитектурный подход, поддерживающий пользовательскую распределённую архитектуру;
  • Удобная система расширения сервера, позволяющая быстро увеличивать типы и количество серверов;
  • Долговременное использование TCP соединения между клиентом и сервером, без необходимости учитывать вопросы, такие как склеивание пакетов;
  • Кэширование служб данных;
  • Позволяет реализовать реальное время обновление профиля данных и логики игры, без чувствительности клиента;
  • Наличие десятков модулей базовой системы игры (доступны начиная с версии v1. 3. 0).

Используемые фреймворки:

123

  • Управление, Firefly представляет собой многопроцессорную, распределённую игровую серверную систему. Так что каждый игровой сервер (процесс) управляет и расширяется через абстракцию расширений сервера, что делает его очень важной частью фреймворка.
  • Сеть, соединение между клиентами и серверами, межпроцессное взаимодействие и т. д.
  • Создает всю игровую архитектуру в контексте; все игровые процессы в этом контексте основаны на ней. Общение с клиентом происходит в стиле запрос/ответ, поэтому при получении запроса от клиента сервер отвечает соответствующим образом. Сервер также может самостоятельно отправлять сообщения всем клиентам широковещательной рассылкой. Эти запросы основаны на номере команды запроса (например, номер 101 используется для команды входа). Общение между процессами сервера осуществляется с помощью асинхронного обратного вызова, что позволяет снизить затраты времени на межпроцессное взаимодействие.
  • Данные и обработка данных являются важной частью онлайн-игр. В онлайн-играх требуется хранение большого объема данных, которые должны быть постоянно обновляемыми, что делает эффективность чтения и записи базы данных главным бутылочным горлышком производительности. Обработка базы данных Firefly может включать кэширование таблиц базы данных в виде объектов Memcached и выполнение соответствующих методических вызовов объектов для управления данными. В различных процессах кэш одного имени создается путем создания экземпляров, данные синхронизируются. Кэш объекта может записывать данные обратно в базу данных.

Архитектурные принципы

        Основной сервер, работающий непрерывно. В распределённой игровой системе нам необходим сервер, который слушает соединения клиентов, наблюдает за другими сервисами и подключается к другим сервисным процессам. Некоторым требуется подключение к базе данных и кэшированию служб. Как показано:

 234

net connect — обрабатывает соединения клиентов, мониторинг других сервисных процессов корневых узлов, узлов для подключения к другим сервисным процессам, db — база данных, «cache» — кэш. Они требуют прослушивания соединений клиентов, прослушивания сообщений других сервисных процессов и т.д. Все это можно настроить в конфигурационном файле config.json, включая имя сервера и различные соединения между каждым сервером. Поэтому вы можете настраивать свою собственную распределённую архитектуру.

Комментарии ( 0 )

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

Введение

Описание недоступно Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/9miao-firefly.git
git@api.gitlife.ru:oschina-mirror/9miao-firefly.git
oschina-mirror
9miao-firefly
9miao-firefly
master