swoole是什麼?官方是這樣解釋的:php
PHP的異步、並行、高性能網絡通訊引擎,使用純C語言編寫,提供了PHP語言的異步多線程服務器,異步TCP/UDP網絡客戶端,異步MySQL,異步Redis,數據庫鏈接池,AsyncTask,消息隊列,毫秒定時器,異步文件讀寫,異步DNS查詢。 Swoole內置了Http/WebSocket服務器端/客戶端、Http2.0服務器端/客戶端。mysql
Swoole雖然是標準的PHP擴展,實際上與普通的擴展不一樣。普通的擴展只是提供一個庫函數。而swoole擴展在運行後會接管PHP的控制權,進入事件循環。當IO事件發生後,swoole會自動回調指定的PHP函數。c++
以及學習swoole須要掌握的基礎知識:git
官方文檔:https://wiki.swoole.comgithub
編譯安裝PHP首先須要安裝對應的編譯工具和一些依賴包:sql
yum install libxml2 libxml2-devel curl curl-devel libpng-devel libjpeg-devel pcre-devel autoconf libmcrypt-devel gcc-c++
PHP下載地址 在這裏挑選你想用的版本便可。下載源碼包後,解壓至本地任意目錄(保證讀寫權限),參考以下命令編譯安裝PHP:數據庫
./configure --prefix=/usr/local/php \ --with-config-file-path=/etc/php \ --enable-fpm \ --enable-pcntl \ --enable-mysqlnd \ --enable-opcache \ --enable-sockets \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ --enable-shmop \ --enable-zip \ --enable-soap \ --enable-xml \ --enable-mbstring \ --disable-rpath \ --disable-debug \ --disable-fileinfo \ --with-mysql=mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --with-pcre-regex \ --with-iconv \ --with-zlib \ --with-mcrypt \ --with-gd \ --with-openssl \ --with-mhash \ --with-xmlrpc \ --with-curl \ --with-imap-ssl sudo make sudo make install sudo mkdir /etc/php sudo cp php.ini-development /etc/php/php.ini
另外還須要將PHP的可執行目錄添加到環境變量中。在 ~/.bashrc 文件末尾添加內容:編程
export PATH=/usr/local/php/bin:$PATH
export PATH=/usr/local/php/sbin:$PATH
保存後執行命令:bash
source ~/.bashrc
Swoole擴展下載地址 能夠下載源碼編譯安裝:服務器
phpize ./configure make sudo make install
還能夠經過 PECL 一鍵安裝:
pecl install swoole
安裝成功後,修改 php.ini 加入:
extension=swoole.so
經過 php -m 或 phpinfo() 來查看是否成功加載了 swoole,若是沒有多是 php.ini 的路徑不對,能夠使用 php --ini 來定位到 php.ini 的絕對路徑。