0

最近,我听说很多 JavaScript 被用于服务器端。Node.js、express.js 和类似的东西被越来越多地提到,但我从来没有时间去深入研究这个话题。

现在,由于信息洪流不会减少,我不能再忽视这些情况。

我想知道两件事:

  • 我可以用服务器端 Javascript 替换我的完整、简单的 PHP 后端吗?它主要用于数据库访问吗?

如果是的话:

  • 这样做有什么好处吗?

如果不:

为什么会有这样的炒作?

这个话题似乎很复杂,不太容易学习,但随着时间的推移,我越来越觉得这可能是后端编码的未来。

4

2 回答 2

1

是的你可以。

如果您主要提供数据,更现代的方法是使用 node.js 来实现一个 restful api。Node.js 特别适合这一点,因为它本质上是异步工作的——这意味着对数据源(即数据库)的每个请求本质上不会在服务器等待返回时阻塞,从而使其在在服务许多请求时高效。

您可以使用节点模块express.jsrestify.js来实现这一点。

不过有一个警告——node.js 是一个单线程应用程序,这意味着在可扩展之前必须执行一些工作。对此有一些很好的解决方案,例如使用 Amazon Elastic beanstalk。但是由于 node.js 是一个相对较新的人,许多其他提议的解决方案可能需要一些哄骗才能为生产做好准备。

您可能会发现在开始之前阅读 Douglas Crockford 的 'Javascript the good parts' 很有帮助 - 我需要将我的 Javascript 知识提升到可以为 node.js 编写高质量可维护代码的水平

于 2013-07-22T15:20:32.707 回答
1

是的,您可以更换它。

你必须知道的关于 Node 的主要概念是being async,其次是being event-driven。因此,如果您的 PHP 应用程序只是访问 db 并返回响应,node.js 在此类应用程序中会更有效,因为不会阻止空闲以获取来自 db 的响应,但可以处理其他请求等等。

这并不复杂,如果你这样做。只是去潜入。不要问 - 原型。这是了解您是否真的需要它的最佳方式。

除了模板之外,我已将所有 PHP 需要替换为 node.js。

于 2013-07-22T14:16:33.053 回答