2019-01-12 Node.js 和Tomcat的区别

2019-01-12  本文已影响0人  KingAmo

在互联网架构中,名词解释:

Web服务器:一般指像nginxapache这类的服务器,他们一般只能解析静态资源。

应用服务器:一般指像tomcatjetty这类的服务器,可以解析动态资源也可以解析静态资源,但解析静态资源的能力没有web服务器好。

一般都是只有web服务器才能被外网访问,应用服务器只能内网访问。

Node.js

node启动一个服务器很简单: 新建一个helloWord.js文件

// helloWord.js
var http = require('http');

http.createServer(function (request, response) {
    response.writeHead(200, {'Content-Type': 'text/plain'});
    response.end('Hello World\n');
}).listen(8888);

或者用基于nodekoa框架(需用npm安装koa)

// helloWord.js
const Koa = require('koa');
const app = new Koa();

const main = ctx => {
  ctx.response.body = 'Hello World';
};

app.use(main);
app.listen(3000); // 监听客户端的 http 请求,类似于Tomcat  Apache 、Nginx 等 HTTP 服务器的功能

命令行输入node helloWord.js 就启动了一个服务.
浏览器(或者postman)访问locathost:3000就能看返回的Hello World字符串。


使用 Node.js 时,我们不仅仅在实现一个应用,同时还实现了整个 HTTP 服务器,也就是说,监听并接收HTTP 请求并提供 Web 页面(或者json数据)的这个需求不需要其他的辅助程序的帮助,是node.js自己完成的。

Tomcat

而使用Java的时候,监听并接收 HTTP 请求并提供 Web 页面(或者json数据)的这个功能是由Tomcat(或者Nginx、Apache等)来实现的。也就是说用Java的时候启动一个服务器需要Tomcat的配合才行。
Tomcat还负责处理路由:访问不同的路径返回不同的资源
Tomcatwebapps文件夹里可以放多个项目。。

JSP文件 :html格式的代码 + <% java代码 %>(JSP脚本)
执行后得到java文件,java文件执行,向输出流写html字符串

上一篇 下一篇

猜你喜欢

热点阅读