【发布时间】:2011-06-06 02:57:43
【问题描述】:
我有一个用 PHP 开发的命令行应用程序,目前使用文件和数据库内容进行输入。我需要更通用的互操作性,并且偶然发现了 Node.js。我发现它可以让我非常快速地创建一个 RESTful 或 SOAP 接口,可以在前端轻松扩展。
知道它是用 C 编写并使用 JavaScript V8 我想知道是否有人已经将任何想法用于执行 node.js 的并行实现,例如 node.php? PHP 开发人员将获得这个框架的奇妙之处,当然我可以通过对我当前的代码库进行有限的更改来立即利用。
这种实施的可行性、可行性和潜在挑战是什么? Node.js 中的 JavaScript 引擎有多根深蒂固,是否可以轻松替换为 PHP 引擎?
【问题讨论】:
-
PHP 作为很多阻塞标准 API。如果您使用单个阻塞 PHP 函数,您的整个 node.php 服务器将崩溃。在 PHP 中这样做没有任何优势
-
@Raynos:为什么会崩溃?我假设它只会阻塞被调用的函数?
-
@AlixAxel 崩溃是错误的词。它阻塞。如果节点阻塞,那将是一个巨大的瓶颈。它“破坏”了您的可伸缩性,它通过异步 IO “破坏”了可伸缩性的概念。
-
@Raynos:node.js 也会阻塞一些东西(比如
requires),这似乎根本不是瓶颈。 -
@AlixAxel 那是因为所有的阻塞都是在
http.createServer之前完成的。当您不处理请求时,可以阻止。基本上你可以在启动时阻止,但是一旦你启动了 HTTP 服务器,你不能阻止。