Rumah  >  Artikel  >  rangka kerja php  >  Cara memasang swoole (perkongsian rekod penuh)

Cara memasang swoole (perkongsian rekod penuh)

藏色散人
藏色散人ke hadapan
2022-01-30 05:00:314082semak imbas

Lajur swole hari ini akan berkongsi dengan anda rekod penuh pemasangan swole Rakan-rakan yang memerlukan boleh melihat dan memahaminya Jika anda mempunyai sebarang pertanyaan, sila tinggalkan mesej untuk perbincangan.

PPA PHP Ondřej Surý menyediakan versi PHP7.2 untuk PHP Ubuntu 16.04/14.04 yang dipasang daripada sumber perisian lalai kepada Unix Status Soket berjalan di /run/php/php7.2-fpm.sock, yang mempunyai prestasi yang lebih baik daripada menggunakan TCP di localhost:9000.

1. Pasang alat pengembangan sumber perisian:

apt -y install software-properties-common apt-transport-https lsb-release ca-certificates

2 Kemas kini cache

add-apt-repository ppa:ondrej/php & apt update

3. Pasang php7.2 dan sambungan asas yang berkaitan

apt install php7.2-fpm php7.2-mysql php7.2-curl php7.2-gd php7.2-mbstring php7.2-xml php7.2-xmlrpc php7.2-zip php7.2-opcache php7.2-dev -y

4. Semak sumber PPA semasa untuk pemasangan langsung

carian apt-cache php7.2
php-radis - perpustakaan klien radis untuk PHP
php-http - modul HTTP PECL untuk PHP Sokongan HTTP Dilanjutkan
php-uploadprogress - sambungan penjejakan kemajuan muat naik fail untuk PHP
php-yaml - penghurai dan pemancar YAML-1.1 untuk PHP
php-mongodb - pemacu MongoDB untuk PHP
php-apcu - Cache Pengguna APC untuk PHP
php-imagick - Menyediakan pembungkus kepada perpustakaan ImageMagick
php-ssh2 - Pengikatan untuk perpustakaan libssh2
php-redis - sambungan PHP untuk antara muka dengan Redis
php-memcached - modul sambungan memcached untuk PHP, menggunakan libmemcached
php-apcu-bc - Modul Keserasian Ke Belakang APCu
php-rrd - Pengikatan PHP ke sistem alat rrd
php-uuid - sambungan PHP UUID
php- memcache - modul sambungan memcache untuk PHP
php-zmq - pengikatan pemesejan ZeroMQ untuk PHP
php-igbinary - igbinary PHP serializer
php-msgpack - sambungan PHP untuk antara muka dengan MessagePack
php -geoip - GeoIP modul untuk PHP
php-tideways - Tideways PHP Profiler Extension
php-yac - YAC (Yet Another Cache) untuk PHP
php-mailparse - Manipulasi mesej e-mel untuk PHP
php- oauth - OAuth 1.0 sambungan pengguna dan pembekal
php-gnupg - Pembalut PHP di sekeliling perpustakaan gpgme
php-propro - modul propro untuk PHP
php-raphf - modul raphf untuk PHP
php-solr - sambungan PHP untuk berkomunikasi dengan pelayan Apache Solr
php-stomp - Modul klien Protokol Mesej Berorientasikan Teks Penstriman (STOMP) untuk PHP
php-gearman - Pembalut PHP kepada libgearman
php-phalcon - rangka kerja PHP tindanan penuh dihantar sebagai C -extension
php-ds - Sambungan PHP menyediakan struktur data yang cekap untuk PHP 7
php-sass - Pengikatan PHP kepada libsass - penghuraian Sass asli yang pantas dalam PHP
php-lua - Jurubahasa lua Terbenam PHP
libapache2-mod-php7.2 - bahagian pelayan, bahasa skrip terbenam HTML (modul Apache 2)
libphp7.2-embed - bahasa skrip terbenam HTML (Perpustakaan SAPI terbenam)
php7 .2-bcmath - Modul Bcmath untuk PHP
php7.2-bz2 - modul bzip2 untuk PHP
php7.2-cgi - bahagian pelayan, bahasa skrip terbenam HTML (binari CGI)
php7.2 -cli - arahan -jurubahasa baris untuk bahasa skrip PHP
php7.2-common - dokumentasi, contoh dan modul biasa untuk PHP
php7.2-curl - modul CURL untuk PHP
php7.2-dba - modul DBA untuk PHP
php7.2-dev - Fail untuk pembangunan modul PHP7.2
php7.2-enchant - Modul Enchant untuk PHP
php7.2-fpm - bahagian pelayan, bahasa skrip terbenam HTML (FPM -CGI binari)
php7.2-gd - Modul GD untuk PHP
php7.2-gmp - Modul GMP untuk PHP
php7.2-imap - Modul IMAP untuk PHP
php7.2- interbase - Modul antara pangkalan untuk PHP
php7.2-intl - Modul pengantarabangsaan untuk PHP
php7.2-json - Modul JSON untuk PHP
php7.2-ldap - Modul LDAP untuk PHP
php7. 2-mbstring - Modul MBSTRING untuk PHP
php7.2-mysql - Modul MySQL untuk PHP
php7.2-odbc - Modul ODBC untuk PHP
php7.2-opcache - Modul Zend OpCache untuk PHP
php7.2-pgsql - Modul PostgreSQL untuk PHP
php7.2-phpdbg - bahagian pelayan, bahasa skrip terbenam HTML (perduaan PHPBG)
php7.2-pspell - modul pspell untuk PHP
php7 .2-readline - modul readline untuk PHP
php7.2-recode - modul kod semula untuk PHP
php7.2-snmp - Modul SNMP untuk PHP
php7.2-soap - modul SOAP untuk PHP
php7.2-sqlite3 - Modul SQLite3 untuk PHP
php7.2-sybase - Modul Sybase untuk PHP
php7.2-tidy - modul kemas untuk PHP
php7.2-xml - DOM, SimpleXML, Modul WDDX, XML dan XSL untuk PHP
php7.2-xmlrpc - Modul XMLRPC-EPI untuk PHP
php7.2-zip - Modul zip untuk PHP
php7.2-xsl - Modul XSL untuk PHP (dummy)
php7.2 - bahagian pelayan, bahasa skrip terbenam HTML (metapakej)
php7.2-sodium - modul libsodium untuk PHP

5

php7后每个扩展都是一个独立的ini文件
本次安装的php扩展都在/etc/php/7.2/mods-available下
apt install php-redis php-igbinary php-pear
ls /etc/php/7.2/mods-available
calendar.ini fileinfo.ini igbinary.ini opcache .ini readline .ini
sysvmsg.ini xml.ini zip.ini ctype.ini ftp.ini
json.ini pdo.ini redis.ini
sysvsem.ini xmlreader.ini
 curl.ini      gd.ini        mbstring.ini  pdo_mysql.ini  shmop.ini      
 sysvshm.ini    xmlrpc.ini
 dom.ini       gettext.ini   mysqli.ini    phar.ini       simplexml.ini  
 tokenizer.ini  xmlwriter.ini
 exif.ini      iconv.ini     mysqlnd.ini   posix.ini      sockets.ini    
 wddx.ini       xsl.ini

6、安装nghttp2库

apt install nghttp2 libnghttp2-dev

7、安装redis官方异步拓展hiredis,如报错需要增加系统gcc支持

git clone https://github.com/redis/hire...
 cd hiredis
make -j
 如果报错 尝试安装gcc
 apt install gcc
 重新编译
 make -j
 make install
 ldconfig

8、swoole拓展编译安装,不推荐使用pecl install swoole

pecl的安装方式没有编译http2与hiredis支持
gcc-4.4 或更高版本
make
autoconf
pcre (centos系统可以执行命令:yum install pcre-devel)
git clone https://gitee.com/swoole/swoo...
 cd swoole
 phpize
 ./configure  --enable-http2 --enable-async-redis
 make && make install

9、添加swoole扩展到php环境中

echo 'extension=swoole.so' >> /etc/php/7.2/mods-available/swoole.ini
cd /etc/php/7.2/cli/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini
cd /etc/php/7.2/fpm/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini

10、查看是否引用成功

php --ri swoole
swoole support => enabled
Version => 2.1.2-alpha
Author => tianfeng.han[email: mikan.tenny@gmail.com]
coroutine => enabled
epoll => enabled
eventfd => enabled
timerfd => enabled
signalfd => enabled
cpu affinity => enabled
spinlock => enabled
rwlock => enabled
async redis client => enabled
async http/websocket client => enabled
openssl => enabled
http2 => enabled
Linux Native AIO => enabled
pcre => enabled
mutex_timedlock => enabled
pthread_barrier => enabled
futex => enabled

Directive => Local Value => Master Value
swoole.aio_thread_num => 2 => 2
swoole.display_errors => On => On
swoole.use_namespace => On => On
swoole.use_shortname => On => On
swoole.fast_serialize => Off => Off
swoole.unixsock_buffer_size => 8388608 => 8388608

至此完整全部完成

更多swoole技术文章,请访问swoole教程栏目!

Atas ialah kandungan terperinci Cara memasang swoole (perkongsian rekod penuh). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:segmentfault.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam