swoole不能代替apache和nginx这些通用的http服务器.
但基于swoole开发的php应用不依赖apache和nginx也能提供生产级别的http服务. (推荐学习: swoole视频教程)
因为swoole内置了异步多进程且能处理静态文件,记录日志和支持php编程的http服务器.
也就是说,你可以把swoole_http_server当成一个php应用服务器,就好比tomcat之于java,tomcat不依赖apache和nginx也能提供http服务.
总而言之,为了简化开发和运维,前期完全可以不去管apache和nginx这些东西,专注于围绕swoole_http_server写业务逻辑就好.
另外,swoole还内置了websocket服务器,而且swoole_websocket_server包含了swoole_http_server,也就是说:
监听 request 事件就能处理http.
监听 open 和 message 事件就能处理websocket.
不管你是用http长连接(ajax长轮询)还是websocket全双工连接,你都可以完全脱离apache和nginx只关注swoole实现你的即时通讯服务.
其实你可以把swoole理解为一个支持php异步编程的nginx服务器.
管理还是要nginx,代替不了nginx
如果你的服务大到需要http/websocket反向代理,当然还是nginx的反向代理更加专业些。
以上就是swoole为什么不能代替nginx的详细内容。