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

OSCHINA-MIRROR/zan-group-zan

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

Эффективный, стабильный, безопасный, удобный в использовании, с онлайн-проверкой в реальном времени — высокопроизводительный асинхронный сетевой набор библиотек.

Предоставляется в виде расширения PHP.

Следуем протоколу Apache, основан на ветке Swoole 1.8.5.

Особая благодарность команде Swoole за их усилия и труд на благо сообщества разработчиков PHP.

Что сделано в Zan

  1. Значительное разделение модулей и их развязка.
  2. Исправление большого количества ошибок и логических недостатков (утечки памяти, проблемы с освобождением логики).
  3. Встроенный общий пул соединений.
  4. Поддержка алгоритма временных циклов.
  5. Асинхронная поддержка интерфейсов с таймаутом.
  6. Усиление безопасности MySQL-клиента (предварительная обработка, транзакции).
  7. Поддержка протокола Nova (RPC-протокол).
  8. Поддержка плавного перезапуска.
  9. 100% покрытие модульными тестами интерфейса.
  10. Реальное и полное API-документация.
  11. ...

Компиляция и установка:

  • Ветвь master претерпела значительные изменения и всё ещё находится на стадии внутреннего тестирования. Не рекомендуется использовать её в рабочей среде. Если требуется стабильность, можно загрузить версию release.
git clone https://github.com/youzan/zan.git
cd zan-extension
phpize
./configure
make
make install
  • Для рекомендуемой установки и настройки:
phpize 
./configure --enable-openssl
make 
make install

Общие проблемы при компиляции и установке Zan:

  1. По умолчанию async-redis-клиент и зависимые расширения сокетов включены, а SSL-функции — нет.

    • Если не хотите использовать async-redis-клиент, отключите его во время настройки с помощью опции --disable-async-redis.
    • Для использования async-redis-клиента необходимо установить библиотеку hiredis. В настоящее время предоставляется версия для x86 под Linux/Mac. Если вам нужна поддержка других аппаратных платформ, таких как ARM, сначала установите hiredis, затем добавьте PHP_ADD_LIBRARY(hiredis, 1, ZAN_SHARED_LIBADD) в файл config.m4, чтобы скомпилировать его в расширение ZAN.
    • Чтобы использовать SSL-функцию, включите её во время настройки с опцией --enable-openssl.
  2. При выполнении phpize может появиться сообщение xxx/sed: No such file. Переустановите PHP или скопируйте /usr/bin/sed в каталог xxx.

  3. При выполнении phpize появляется сообщение Cannot find autoconf. Сначала установите инструмент autoconf.

  4. При выполнении configure появляется сообщение libcurl not installed. Переустановите библиотеку curl и убедитесь, что имена и пути библиотеки и файлов заголовков указаны правильно.

    • Обычно библиотека libcurl.so (обычно с версией libxxx.so.xxx, которая связана с libXXX.so для распознавания компоновщиком) связана с файлом заголовка /usr/include/curl.
    • После правильной установки библиотеки curl обязательно повторно выполните phpize && configure, чтобы убедиться, что новая конфигурация вступит в силу.
    • Если после выполнения пунктов 1 и 2 по-прежнему появляется сообщение об ошибке, вы можете изменить путь конфигурации PHP_CURL в config.m4 на путь вашей установки curl.
  5. При выполнении configure появляется сообщение enable sockets support, sockets extension installed incorrectly. Убедитесь, что установлена ​​правильная версия PHP и расширение сокетов.

    • Версия PHP должна быть выше 5.6.
    • В пути include PHP должен быть файл заголовка ext/sockets/php_sockets.h.
    • Расширение сокетов должно загружаться перед расширением Zan (в порядке загрузки, указанном в php.ini), чтобы обеспечить возможность ссылки на информацию о таблице символов.
  6. При выполнении configure появляется сообщение Enable openssl support, require openssl library. Переустановите библиотеку openssl и убедитесь в правильности её связывания.

    • Переустановите библиотеку openssl.
    • Добавьте путь к библиотеке openssl в config.m4 в LDFLAGS, чтобы компоновщик мог найти lib. Например, добавьте -L/usr/local/opt/openssl/lib.
    • Добавьте путь к файлу заголовка openssl в config.m4 в CPPFLAGS.
    • Повторите настройку, установку и сборку, как описано выше.

Официальные каналы связи:

Сайт: нажмите здесь, чтобы перейти.

Репозиторий документации Zan: zan-doc.

Просмотр документации онлайн: http://zandoc.zanphp.io ✈.

QQ-группа: 115728122.

Полезные ссылки:

  • Асинхронная сетевая модель.
  • PHP асинхронное программирование: руководство по реализации co и Koa.
  • Глубокое понимание оптимизации opcode в PHP.
  • Zan-Stats — инструмент мониторинга.

Пожертвования:

Канал пожертвований.

Лицензия:

Zan framework (https://github.com/youzan/zan) распространяется под лицензией Apache 2.0.

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

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

Введение

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

Обновления

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

Участники

все

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

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