workerman和swoole的區(qū)別

workerman和swoole的區(qū)別

workermanswoole都是php socket 服務(wù)器框架,都支持長連接、tcp和udpwebsocket異步分布式部署等

workerman純php寫的,swoole是php的c擴(kuò)展,性能肯定更高,百度、騰訊不少產(chǎn)品的server就是基于swoole的

workerman上手更快,文檔更豐富,社區(qū)活躍,社區(qū)基本做到有問必答。? ? ? ? ? ? ? (推薦學(xué)習(xí): workerman教程

性能上Swoole畢竟是c語言開發(fā)的,在某些地方如內(nèi)存管理、數(shù)據(jù)結(jié)構(gòu)、通信協(xié)議解析上肯定要比PHP開發(fā)的workerman高。

功能上swoole提供的高級特性很多,列舉幾個(gè)workerman沒有的吧,比如ssl/TLS隧道加密、http2.0、異步mysql驅(qū)動、異步redis驅(qū)動、異步的http/websocket客戶端、process、lock、atomic、table。另外Swoole 2.0內(nèi)置了PHP原生協(xié)程的支持,PHP代碼也可以使用類似于go語言的協(xié)程來實(shí)現(xiàn)高并發(fā)的網(wǎng)絡(luò)服務(wù)器。

外部依賴上workerman需要依賴很多額外的第三方PHP擴(kuò)展來實(shí)現(xiàn),局限性比較大,這些擴(kuò)展并非是PHP官方維護(hù)的,維護(hù)性方面良莠不齊,有些擴(kuò)展連PHP7都不支持,數(shù)年沒人維護(hù)。而Swoole基本上無依賴,底層的代碼全部可控。

開發(fā)維護(hù)方面,Swoole的開發(fā)團(tuán)隊(duì)目前有大概18人左右,開發(fā)者基本上都是來自騰訊、百度、阿里、滴滴、微博等國內(nèi)一線互聯(lián)網(wǎng)企業(yè),支持維護(hù)的團(tuán)隊(duì)更穩(wěn)定。

當(dāng)然workerman的優(yōu)勢是它完全使用PHP代碼實(shí)現(xiàn),開發(fā)者可以直接看它的源碼。有特殊需求也可以直接改源碼來實(shí)現(xiàn)。如果換成swoole就不是那么簡單了。

workerman做的事情更多一些,即是框架又是工具和完整的解決方案,對于沒有太多后端編程功底的程序員也來說確實(shí)會容易很多。

而swoole實(shí)際上只是一個(gè)底層庫,不是拿來可用的完整產(chǎn)品,基于swoole有很多PHP的框架和程序,比如tsf、zan php framework、hprose-swoole、zphp、swoole/framework、blink、dorarpc、SwooleDistributed等等,普通開發(fā)者可以直接基于這些項(xiàng)目進(jìn)行開發(fā)。

Swoole是給高手用的,門檻比較高,需要使用者有深厚的功底。你這里問的哪個(gè)更容易開發(fā),這個(gè)沒辦法回答,這個(gè)要看你要開發(fā)什么、團(tuán)隊(duì)或個(gè)人的實(shí)際情況如何,合適的才是最好的。

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊5 分享