什么是swoole?
Swoole是一個(gè)面向生產(chǎn)環(huán)境的 PHP 異步網(wǎng)絡(luò)通信引擎,使 PHP 開發(fā)人員可以編寫高性能的異步并發(fā) TCP、UDP、Unix Socket、HTTP,WebSocket 服務(wù)。Swoole 可以廣泛應(yīng)用于互聯(lián)網(wǎng)、移動(dòng)通信、企業(yè)軟件、云計(jì)算、網(wǎng)絡(luò)游戲、物聯(lián)網(wǎng)(IOT)、車聯(lián)網(wǎng)、智能家居等領(lǐng)域。 使用 PHP + Swoole 作為網(wǎng)絡(luò)通信框架,可以使企業(yè) IT 研發(fā)團(tuán)隊(duì)的效率大大提升。
Swoole不是一個(gè)像Zend Framework、CakePHP、Yii、symfony、ThinkPHP等一樣的框架,也不是一個(gè)像WordPress、Drupal、Discuz、UChome等開源產(chǎn)品看齊的項(xiàng)目。 Swoole的目標(biāo)是向Java框架、Ruby On Rails、Python DjangoPylons等一流框架發(fā)起挑戰(zhàn)。
Swoole雖然是標(biāo)準(zhǔn)的PHP擴(kuò)展,實(shí)際上與普通的擴(kuò)展不同。普通的擴(kuò)展只是提供一個(gè)庫函數(shù)。而Swoole擴(kuò)展在運(yùn)行后會(huì)接管PHP的控制權(quán),進(jìn)入事件循環(huán)。當(dāng)IO事件發(fā)生后底層會(huì)自動(dòng)回調(diào)指定的PHP函數(shù)。
環(huán)境依賴
僅支持 Linux、FreeBSD、MacOS 三種操作系統(tǒng)
在Windows平臺(tái),可使用CygWin或WSL(Windows Subsystem for Linux)
Linux 內(nèi)核版本 2.3.32 以上
gcc-4.8或更高版本,依賴C++11
編譯為 libswoole.so 作為 C/C++ 庫時(shí)需要使用 cmake-2.4 或更高版本
建議使用 Ubuntu14、CentOS7 或更高版本的操作系統(tǒng)
低版本系統(tǒng)(如CentOS 6)可以使用RedHat提供的devtools編譯,
推薦學(xué)習(xí): swoole教程