Phi*_*hil 1 apache webserver reverse-proxy nginx node.js
对于在Node.JS上运行的SaaS,是否需要Web服务器?
如果是的话,哪一个和为什么?
使用just节点会有什么缺点?它的作用是只处理CRUD请求并为客户端提供JSON以解析日期(如Gmail).
"是必要的网络服务器"?
从技术上讲,没有.实际上,是的,通常使用单独的Web服务器,这是有充分理由的.
在Ryan Dahl于2010年5月的演讲中,在37'30"他表示他建议在出于"安全原因"的情况下在反向代理或Web服务器后面运行node.js.详细说明,像nginx或apache这样的强化Web服务器有他们的TCP堆栈在稳定性和安全性方面已经发展了很长时间.Node.js还没有处于同一水平.因此,因为将node.js放在nginx后面很容易,没有很多负面后果,理论上也是如此在一定程度上增加了部署的安全性.这是一个不错的选择.在某个时间点,node.js可能被视为正式"为直接互联网直接连接做好准备",但等待Ryan/Joyent做出一些宣布.
其次,绑定到1024个以下的端口(如80和443)需要进程为root.nginx和其他人自动以root身份处理绑定,然后将权限删除到更安全的用户帐户(通常是www-data或nobody).虽然node.js的有系统调用封装process模块删除用root权限setgid和setuid,据我所知这比自己的节点界目前还没有看到一个约定编码等出现这样做.本讨论中有关此主题的更多信息.
第三,Web服务器擅长虚拟主机,一般情况下你可以做一些方便的事情(URL重写等),这需要在node.js中进行自定义编码.
第四,nginx非常适合提供静态文件.比node.js更好(至少现在一点点).随着时间的推移,这一点可能变得越来越不相关,但在我看来,传统的静态文件Web服务器和Web应用程序服务器仍然具有不同的角色和用途.
"如果是的话,哪一个和为什么"?
nginx.因为它具有出色的性能,并且比apache更易于配置.
| 归档时间: | 
 | 
| 查看次数: | 1163 次 | 
| 最近记录: |