最近我一直在学习Node.js,看到了一些关于编写简单基于Node.js的服务器的资料。例如下面这个。
var express = require("express"),
http = require("http"), app;
// Create our Express-powered HTTP server
// and have it listen on port 3000
app = express();
http.createServer(app).listen(3000);
// set up our routes
app.get("/hello", function (req, res) {
res.send("Hello World!");
});
app.get("/goodbye", function (req, res) {
res.send("Goodbye World!");
});
现在,虽然我似乎理解了代码中正在进行的事情,但术语让我有些困惑。当我听到"server"这个词时,我会想到像Apache或Nginx这样的东西。我习惯于将它们看作是可以容纳我的Web应用程序的容器。Node.js服务器与Nginx / Apache服务器有何不同?难道不能将基于Node.js的服务器(即代码)放置在类似Nginx中以运行吗?那么为什么两者都被称为"服务器"?