我正在构建Node.js应用程序,并且正在使用nginx作为反向代理。我的应用程序有一些我需要提供服务的静态文件和一个Socket.io服务器。
我知道我可以直接使用Express服务静态文件(使用express.static中间件)。另外,我可以将nginx直接指向我的静态文件所在的目录,以便由nginx提供服务。
所以,问题是:哪种方法更好?使用每种方法时,我可以面对哪些利弊?
用于开发: express ,主要是因为它提供的灵活性…您可以在开发过程中非常轻松地更改静态位置和结构
用于生产: nginx ,因为它要快得多。节点/表达式对于执行逻辑非常有用,但是对于提供原始内容……没有什么可以击败nginx的。您还可以获得其他功能,例如gzip,负载平衡…