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

OSCHINA-MIRROR/FasShareCode-FAS-NetBase

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 3.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 06:43 b478334

FAS — это серверный фреймворк, работающий на базе операционной системы Linux и использующий модель Reactor, основанную на мультипоточности и повторном использовании ввода-вывода. Основные характеристики:

  1. Фреймворк включает в себя модуль пула потоков, модуль управления TCP-соединениями, а также модуль таймеров и некоторые базовые функции для работы со строками, файлами и сокетами.
  2. Количество потоков в пуле настраивается просто: достаточно указать количество дочерних потоков. В будущем планируется реализовать настройку через конфигурационный файл.
  3. TCP-соединение реализуется с помощью отдельного класса, который можно использовать отдельно. Этот класс взаимодействует с пользователем через функции обратного вызова. На данный момент пользователь может установить до пяти функций обратного вызова: для уведомления о поступлении данных, возможности отправки данных, ошибки, закрытия соединения и поэтапной отправки больших файлов (для примера использования см. реализацию HTTP).
  4. Модуль таймера использует управление временной кучей и представляет собой отдельный модуль. Функция обработки тайм-аута задаётся через функцию обратного вызова. Любой класс может создать таймер, после чего интерфейс добавления таймера в EventLoop текущего потока позволяет добавить его в цикл событий этого потока. Теоретически количество таймеров, которые может создать один класс, не ограничено.
  5. Реализован модуль HTTP, который служит как для тестирования сетевой библиотеки FAS, так и для предоставления способа расширения нижнего уровня интерфейса.
  6. Дополнительные функции, предоставляемые библиотекой, включают в себя функции для работы со строками, файлы и сокеты, которые могут быть использованы отдельно.
  7. Текущая конфигурация фреймворка в основном передаётся через параметры функции при использовании. В ближайшее время планируется добавить конфигурацию через конфигурационные файлы.

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

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

1
https://api.gitlife.ru/oschina-mirror/FasShareCode-FAS-NetBase.git
git@api.gitlife.ru:oschina-mirror/FasShareCode-FAS-NetBase.git
oschina-mirror
FasShareCode-FAS-NetBase
FasShareCode-FAS-NetBase
master