学习Node.js(1)——什么是Node.js

Node.js is a JavaScript runtime built on Chrome’s V8 JavaScript engine.
Node.js是基于Chrome的V8 JavaScript引擎构建的JavaScript运行时。

简单的说 Node.js 就是运行在服务端的 JavaScript。
Node.js只能运行ECMAScript。
Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。

作为异步事件驱动的JavaScript运行时,Node旨在构建可伸缩的网络应用程序。在下面的“hello world”示例中,可以同时处理许多连接。在每次连接时都会触发回调,但是如果没有工作要做,Node将会休眠。

安装Node之后,让我们尝试构建我们的第一个Web服务器。创建名为“app.js”的文件,并粘贴以下代码:

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

之后,运行您的Web服务器

node app.js

访问http://127.0.0.1:3000/,您将看到一条消息“Hello World”

这与当今使用OS线程的更常见的并发模型形成对比。基于线程的网络效率相对较低且非常难以使用。此外,Node的用户不必担心死锁,因为没有锁。Node中几乎没有任何函数直接执行I / O,因此进程永远不会阻塞。由于没有任何阻塞,可扩展系统在Node中开发非常合理。

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值