1. 程式人生 > 程式設計 >PHP之Swoole學習安裝教程

PHP之Swoole學習安裝教程

一、前言

swoole是什麼?官方是這樣解釋的:

的非同步、並行、高效能網路通訊引擎,使用純C語言編寫,提供了PHP語言的非同步多執行緒伺服器,非同步TCP/UDP網路客戶端,非同步,非同步Redis,連線池,AsyncTask,訊息佇列,毫秒定時器,非同步檔案讀寫,非同步DNS查詢。 Swoole內建了Http/WebSocket伺服器端/客戶端、Http2.0伺服器端/客戶端。

Swoole雖然是標準的PHP擴充套件,實際上與普通的擴充套件不同。普通的擴充套件只是提供一個庫函式。而swoole擴充套件在執行後會接管PHP的控制權,進入事件迴圈。當IO事件發生後,swoole會自動回撥指定的PHP函式。

以及學習swoole需要掌握的基礎知識:

  • 熟練使用PHP語言
  • 熟練使用MySQL、Redis資料庫
  • 熟練使用
  • 基本瞭解Unix網路相關知識(參閱《Unix網路程式設計(卷1) 》 )
  • 基本的gdb使用

官方文件:https://wiki.swoole.com

二、Swoole 環境搭建

2.1 PHP Installation

編譯安裝PHP首先需要安裝對應的編譯工具和一些依賴包:

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 /etcwww.cppcns.com/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

儲存後執行命令:

source ~/.bashrc

2.2 Swoole Installation

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 的絕對路徑。

2.3 開發工具提示包

  • https://.com/eaglewu/swoole-ide-helper

到此這篇關於PHP之Swoole學習安裝教程的文章就介紹到這了,更多相關PHP之Swoole學習安裝內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以程式設計客棧後多多支援我們!