我一直在查看node.js应用程序和php,我发现了许多比较这两种服务器技术的比较。大多数人认为,就单个文件计算的运行速度而言,javascript V8引擎要比php快得多。
我为Node.js编写了一些javascript代码,现在我有了这个想法,我不知道它是否正确。
在我看来,Node.js运行一个javascript应用程序并侦听一个端口。所以这个javascript应用程序是一个运行在服务器计算机上的应用程序。因此,应用程序代码全部复制到计算机内存中。当node.js执行这个程序时,像全局变量这样的东西在开始时被声明和保存。因此,任何新的请求进来,服务器可以非常有效地使用这些变量。
但是,在php中,php程序根据请求执行*.php文件。因此,如果有人请求www.xx.com/index.php,那么程序将执行index.php,其中可能有以下内容
require("globalVariables.php");然后,php.exe会在那里再次声明这些变量。对于函数和其他物体也有相同的想法..。
那么,当需要包含许多其他库时,我是否正确地认为php可能不是一个好主意?
我一直在寻找比较,但没有人谈论过这个。
谢谢
发布于 2014-07-08 08:14:41
你在比较不同的东西。PHP依赖于Apache或nginx (例如)来提供脚本,而Node.js本身就是一个完整的服务器。
这是一个很大的区别,因为当您加载一个php页面时,Apache将生成一个线程并在那里运行脚本。在Node中,所有请求都由Node.js唯一线程处理。
因此,php和Node.js是不同的东西,但是考虑到您的需要:是的,您可以在Node中创建一个将始终加载在内存中的全局上下文。另一方面,PHP一直在加载、运行和退出。但这不是典型的用例,Node.js web应用程序有模板,需要加载和分析,数据库调用,文件.真正的区别在于Node.js处理繁重任务的方式:用于javascript的单线程、用于事件队列的事件队列以及用于文件系统、网络和所有这些慢动作的外部线程。传统服务器为每个连接生成线程,这是一种非常不同的方法。
https://stackoverflow.com/questions/24621187
复制相似问题