В этой статье представлена установка и настройка PHP pthreads V3 на платформе centos 7. Подробности заключаются в следующем:
Моя версия CentOS-7.4.1708, а версия PHP-7.2.4 (обратите внимание на потокобезопасную версию), как показано на рисунке ниже:
Прежде всего, мы можем загрузить исходный код потоков со следующего веб-сайта:
http://pecl.php.net/package/pthreads
Например: pthreads-3.1.6.tgz
1. Распакуйте архив и войдите в каталог
> tar xf pthreads-3.1.6.tgz > cd pthreads-3.1.6
2. Запустите phpize для создания конфигурации. Если путь не настроен, вы можете отметить абсолютный путь.
> phpize
3. Запустите настройку
> ./configure --with-php-config=/data/php72/bin/php-config
4. Запустите make & & сделайте установку
> make && make install
Если возникает следующая ситуация, ваш PHP несовместим с версией pthreads, как показано на рисунке ниже:
Нам нужно найти темы на GitHub
> https://github.com/krakjoe/pthreads
Обратите внимание, чтобы загрузить почтовый пакет. Нам нужно использовать последнюю версию. Не вдавайтесь в подробности. Если ваша версия PHP 7.1, вы можете попробовать ее.
Например: pthreads-master.zip
> unzip pthreads-master.zip > cd pthreads-master
Остальные шаги такие же, как и выше
Если вы видите следующую информацию, значит, вы успешно выполнили компиляцию.
(обратите внимание, что в нем есть дыра. Не настраивайте расширение pthreads в php.ini, в противном случае PHP FPM не может быть запущен, так как версия pthreads V3 может запускаться только в CLI)
Используйте следующую команду для просмотра расположения файла INI:
> php --ini
Затем сделайте копию в каталоге php.ini и назовите ее php-cli.ini
> cp php.ini php-cli.ini
Изменить файл php-cli.ini
extension_dir = "/data/php72/lib/php/extensions/no-debug-zts-20170718/" extension=pthreads.so
Перезапустите службу PHP, чтобы узнать, установлено ли расширение pthreads
> php -m | grep pthreads
Для получения дополнительной информации о PHP читатели, интересующиеся этим сайтом, могут ознакомиться со следующими темами: краткое описание навыков работы с процессами и потоками PHP, краткое описание навыков сетевого программирования PHP, вводный курс базового синтаксиса PHP, полная коллекция навыков работы с массивами PHP, краткое описание использования строк PHP “Руководство по работе с базой данных PHP + MySQL” и “Краткое описание навыков работы с общей базой данных PHP”
Я надеюсь, что эта статья будет полезна для программирования на PHP.