javascript - 我需要nodejs还是只能依赖Nginx?

标签 javascript node.js angularjs nginx

我有一个应用程序,我与同事就是否需要使用 Node.js 进行了辩论。

  • 我们的决定是使用 angular.js 作为前端,并通过 REST api 与应用服务器进行通信。 应用程序服务器不会位于 Node.js 中。它可以是 .net 或 Java

  • Nginx 将排在前面,因为它更适合提供静态文件、gzip 等。

有很多选项可以为你的 Angular 应用程序进行样板化,其中许多都包含 Nodejs。我的第一个方法是使用 Node.js 作为主要 Web 服务器并对其进行扩展以解决性能问题。虽然,这不是一个好方法,因为 Node 的 Angular 色不是充当 Web 服务器。好吧,我的问题来了。

记住上述两点,是否有任何理由生成包括node.js 的前端?

有什么我没有想到的可以让我受益的事情吗?

最佳答案

这里是简短的回答:如果您打算在 .net 或 Java 后端前面使用 nginx,并且您只是在寻找 angular.js 的部署工具,那么只需选择任何有意义的 javascript 部署工具即可,它很可能是用 Node 构建的。

以下是更多说明:

我不太确定你所说的“Node 的 Angular 色不是充当网络服务器”是什么意思...如果你的意思是一般情况,那么这正是它通常使用的方式,如果你的意思是你的应用程序服务器将是.net 或 java,但不是 javascript,那就可以了。

一般来说,nginx 对于静态文件的执行速度会更快,但相对于 Node.js 的改进幅度对于几乎任何人来说可能都是毫无意义的。如果您需要(或者有意义)将 Node 作为 Angular 部署堆栈的一部分,那么将其用作反向代理并完全消除 nginx 可能是有意义的。使用 nginx 来获得可衡量的好处的可能性微乎其微。

也就是说...如果您已经设置了 nginx 并移动到 Node ,则代表您已经完成过一次的额外工作,那么它就失去了主要吸引力。

与我所知道的任何其他项目相比,node.js 的优势在于它在 Web 堆栈的每个级别上都具有强大的功能。但它不一定比在堆栈的适当级别中使用的各个项目更有能力,并且如果您不打算使用它通过同质化所涉及的技术和应用程序来降低堆栈的复杂性,那么它就取决于偏好。

关于javascript - 我需要nodejs还是只能依赖Nginx?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22786343/

相关文章:

node.js - 从 ElementHandle 获取属性

node.js - 找不到模块 googleapis

node.js - Node JS + Express - 异步请求

javascript - 使用服务器动态的默认值绑定(bind) ng-options

Javascript PHP/MySQL - 将数据库中的行值插入文本字段

javascript - Angularjs:如何检查元素的子元素是否包含某个元素(通过 ID)

javascript - 如何从字符串中解析 XML

javascript - AngularJS - 模块依赖,命名冲突

javascript - 从日期选择器中 trim 包含时间的字符串

javascript - Node.js 中有类似 'get_meta_tags' 的方法吗?