## **數據庫環境要求**
數據庫要求:mysql >=5.5.5、redis
## **PHP環境要求:**
webim-plugin是基于WorkerMan下的GatewayWorker開發的所以webim-plugin所需擴展及環境與workerman基本一致(只增加了pdo數據庫擴展、redis擴展和mb_string字符串處理擴展)。
## **jquery要求**
已有網站引入的jquery大于jQuery1.11或未引入過jquery
### **Windows用戶**
1、需要PHP>=5.6,并配置好PHP的環境變量。
2、安裝了pdo、mb_string、redis擴展。
3、安裝使用以及注意事項參見這里。
4、如需開啟https或wss則需要安裝openssl擴展。
### **Linux用戶(含Mac OS)**
1、需要PHP>=5.6,并安裝了pcntl、posix、pdo、mb_string、redis擴展
2、建議安裝event或者libevent擴展,但不是必須的(注意event擴展需要PHP>=5.4)
3、如需開啟https或wss則需要安裝openssl擴展。
>[danger] ### **注意:**
>php的進程擴展pcntl暫不支持windows環境,故windows下為單進程模式運行,強烈建議windows只做開發測試,線上環境在linux下部署并安裝event或者libevent擴展。
### **詳細說明**
## 關于PHP-CLI
webim-plugin是基于WorkerMan下的GatewayWorker開發的,而WorkerMan是基于PHP命令行(PHP-CLI)模式運行的。PHP-CLI與PHP-FPM或者Apache的MOD-PHP是獨立的可執行程序,它們之間并不沖突也不會有相互依賴,完全獨立。
## 關于依賴的擴展
1、pcntl擴展
pcntl擴展是PHP在Linux環境下進程控制的重要擴展,WorkerMan用到了其進程創建、信號控制、定時器、進程狀態監控等特性。此擴展win平臺不支持。
2、posix擴展
posix擴展使得PHP在Linux環境可以調用系統通過POSIX標準提供的接口。WorkerMan主要使用了其相關的接口實現了守護進程化、用戶組控制等功能。此擴展win平臺不支持。
3、 Event擴展 或者 libevent擴展
libevent擴展(或者event擴展)使得PHP可以使用系統Epoll、Kqueue等高級事件處理機制,能夠顯著提高WorkerMan在高并發連接時CPU利用率。在高并發長連接相關應用中非常重要。libevent擴展(或者event擴展)不是必須的,如果沒安裝,則默認使用PHP原生Select事件處理機制。