Swoole不能代替Apache和Nginx這些通用的HTTP服務(wù)器.
但基于Swoole開發(fā)的PHP應(yīng)用不依賴Apache和Nginx也能提供生產(chǎn)級別的HTTP服務(wù). (推薦學(xué)習(xí): swoole視頻教程)
因為Swoole內(nèi)置了異步多進(jìn)程且能處理靜態(tài)文件,記錄日志和支持PHP編程的HTTP服務(wù)器.
也就是說,你可以把swoole_http_server當(dāng)成一個PHP應(yīng)用服務(wù)器,就好比Tomcat之于Java,Tomcat不依賴Apache和Nginx也能提供HTTP服務(wù).
總而言之,為了簡化開發(fā)和運(yùn)維,前期完全可以不去管Apache和Nginx這些東西,專注于圍繞swoole_http_server寫業(yè)務(wù)邏輯就好.
另外,Swoole還內(nèi)置了WebSocket服務(wù)器,而且swoole_websocket_server包含了swoole_http_server,也就是說:
監(jiān)聽 request 事件就能處理HTTP.
監(jiān)聽 open 和 message 事件就能處理WebSocket.
不管你是用HTTP長連接(AJAX長輪詢)還是WebSocket全雙工連接,你都可以完全脫離Apache和Nginx只關(guān)注Swoole實(shí)現(xiàn)你的即時通訊服務(wù).
其實(shí)你可以把Swoole理解為一個支持PHP異步編程的Nginx服務(wù)器.
管理還是要nginx,代替不了nginx
如果你的服務(wù)大到需要HTTP/WebSocket反向代理,當(dāng)然還是Nginx的反向代理更加專業(yè)些。