Углеродный облачный серверный фреймворк на основе Swoole
Функции:
Требования к среде:
Расширения:
Примечание: необходимо различать уровни кэша. Один из них — временный кэш для CLI-приложений, который нужно очищать при каждом запуске сервиса. Другой — постоянный кэш, который не требует очистки при запуске приложения, например, сессии.
Также необходимо настроить интерфейс доступа к данным, чтобы определить, какие модули и классы могут быть доступны.
Есть функция ограничения IP, которая позволяет разрешить подключение только определённому диапазону IP-адресов клиентов.
Если вы используете метод cache для временного кэширования, используйте префикс tmp_, чтобы очистить временный кэш. Используйте cache('[cleartmp]') для очистки.
Для LOG-сервиса можно использовать TCP или UDP-протокол. При внедрении фреймворка настройте адрес журнала через Config или define. Все журналы, созданные с помощью метода L, будут отправлены на этот сервер.
TODO: реализовать пул соединений MySQL.
Автоматическое построение разделено на три части:
PDM-метки:
Руководство по использованию
Содержание:
[Раздел 1. Зависимость от среды] (#__RefHeading__605_584730065)
Linux: (#__RefHeading__607_584730065) ниже .
Windows: (#__RefHeading__609_584730065) ниже .
[Раздел 2. Создание проекта] (#__RefHeading__611_584730065):
Создайте файл запуска и импортируйте SwooleFramework: (#__RefHeading__613_584730065) фреймворк .
Структура проекта: (#__RefHeading__615_584730065) ... .
Режим сервера Swoole: (#__RefHeading__617_584730065) настройка .
LISTEN // настройка прослушивания: (#__RefHeading__619_584730065) конфигурация .
CONF // конфигурация сервера: (#__RefHeading__621_584730065) сервер .
[Раздел 3. Запуск программы] (#__RefHeading__623_584730065).
[Раздел 4. Список функций] (#__RefHeading__625_584730065).
Установка Swoole: http://wiki.swoole.com/wiki/page/6.html.
error_reporting(E_ALL); // установить уровень ошибок PHP
$APP_PATH = 'Example'; // путь к коду
$RUNTIME_PATH = 'Runtime'; // кэш
define('APP_MODE','SWOOLE');
// режим
define
('DEFAULT_MODULE','Application'); // в этой версии обязательно определите модуль по умолчанию, значение которого совпадает с последним каталогом в APP_PATH
include '../SocketFramework/Tsy/Tsy.php';
// импортировать SocketFramework
Структуру проекта можно представить так:
Настройка сервера в режиме Swoole в файле Swoole.php: настройка включает в себя конфигурацию прослушивания и настройки сервера.
Разрешённый IP-адрес для доступа, установите 0.0.0.0 для разрешения доступа ко всем IP-адресам.
Установите порт, на котором будет открыт сервер.
Тип прослушивания.
Настройка маршрутизации, определяющая способ анализа параметров доступа.
Формат вывода параметров.
Подробности см. в официальной документации Swoole.
Запуск процесса в фоновом режиме. Если daemonize = 1, программа будет работать как фоновый процесс. Долговременные серверные программы должны включать эту опцию.
При включении фонового процесса стандартный ввод и вывод будут перенаправлены в log_file.
Настройте количество рабочих процессов задачи. После включения этой опции будет включена функция задачи, поэтому Swoole_server должен зарегистрировать события onTask и onFinish. Если они не зарегистрированы, сервер не запустится.
Рабочие процессы задачи являются синхронными и блокирующими, а их конфигурация аналогична конфигурации рабочего процесса синхронизации.
Стратегия распределения пакетов данных. Можно выбрать один из трёх типов, по умолчанию используется второй тип.
dispatch_mode 4 и 5, эти два режима, когда dispatch_mode=1/3, нижний уровень скроет события onConnect/onClose, причина в том, что эти два режима не могут гарантировать порядок onConnect/onClose/onReceive.
Неблокирующие серверы запросов не должны использовать режимы 1 или 3.
Количество запущенных рабочих процессов.
cd /home/ServerDemo
php start.php
[2016-04-25]
В функции кеширования в операции с тегами в алгоритме для массивов используется операция вычисления разности множеств вместо поиска и последующего удаления.
[2016-04-24]
Функция кеширования поддерживает операторы [+][-][-A][+A][-S][-A], где + и - означают добавление или удаление, A — операцию над массивом, S — операцию над строкой. Пример:
cache('[+A]ke','ss');
[2016-04-22]
Если в стартовом скрипте определить значение APP_BUILD как true, будет выполнен поиск модулей в каталоге проекта и их связывание с конфигурацией базы данных в модуле. Затем будут созданы файлы контроллеров, объектов и моделей, а также соответствующие файлы кэша.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )