node.js简单介绍

1 篇文章 0 订阅

简单的说 Node.js 就是运行在服务端的 JavaScript。

Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。

Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。

 

/*
* V8是Google Chrome浏览器内置的JavaScript脚本引擎。
Google Chrome使用V8的API,但引擎的内核部分是独立于浏览器之外的。
V8引擎编译和执行JavaScript源代码。
速度是V8追求的主要设计目标之一,它把JavaScript代码直接编译成机器码运行,
比起传统的“中间代码+解释器”的引擎,优势不言而喻。
V8的团队说Chrome对脚本的解析和执行速度是Firefox和Safari的10倍,是IE的56倍。
* */


什么是web容器?
我们以其他服务器为例,安装好其他服务器后,
我们在可以找到其他的一个根目录,往这个根目录放入静态文件,
如图片、xxx.html,可以找浏览器上访问得到,这个目录我们可以称为web容器。


nodejs 是没有web容器,不像php与nginx结合可直接访问静态文件;
nodejs每一次访问都要做顶层路由设计(图片、css等都要做路由设计,
后面学习框架,如express,它已经帮我们做了很多路由设计,
不用自己每访问一个静态资源、或路由都自己去实现)。用nodejs做一个静态资源服务器
,要做一堆的路由设计,在nodejs中如果看到一个路由是/yuan;
就不要想着其一定有一个对应的yuan物理文件夹;
url和真实物理文件夹是没有关系的,而是通过nodejs路由设计关联起来的。

/*单线程*/
    单线程在程序执行时,所走的程序路径按照连续顺序排下来,前面的必须处理好,
后面的才会执行。单线程处理的优点:同步应用程序的开发比较容易,
但由于需要在上一个任务完成后才能开始新
的任务,所以其效率通常比多线程应用程序低。
如果完成同步任务所用的时间比预计时间长,
应用程序可能会不响应。多线程处理可以同时运行多个过程。

/*阻塞I/O
首先,要从你常用的IO操作谈起,比如read和write,通常IO操作都是阻塞I/O的,
也就是说当你调用read时,如果没有数据收到,那么线程或者进程就会被挂起,
直到收到数据。阻塞的意思,就是一直等着。阻塞I/O就是等着数据过来,
进行读写操作。应用的函数进行调用,但是内核一直没有返回,就一直等着。
应用的函数长时间处于等待结果的状态,我们就称为阻塞I/O。
每个应用都得等着,每个应用都在等着,浪费啊!很像现实中的情况。大家都不干活,
等着数据过来,过来工作一下,没有的话继续等着。*/

/*非阻塞I/O
相当于你去查看有没有数据,告诉你没有,过一会再来吧!应用过一会再来问,
有没有数据?没有数据,会有一个返回
* */

/*事件驱动
* 在基于线程的方式中(thread-based way)你到了柜台前,把你的点餐单给收银员或者给收银
* 员直接点餐,然后等在那直到你要的食物准备好给你。收银员不能接待下一个人,
* 除非你拿到食物离开。想接待更多的客户,容易!加更多的收银员!
当然,我们知道快餐店其实不是这样工作的。他们其实就是基于事件驱动方式,这样收银员更高效。
只要你把点餐单给收银员,某个人已经开始准备你的食物,而同时收银员在进行收款,当你付完钱,
你就站在一边而收银员已经开始接待下一个客户。在一些餐馆,甚至会给你一个号码,
如果你的食物准备好了,就呼叫你的号码让你去柜台取。关键的一点是,你没有阻塞下一个客户
的订餐请求。你订餐的食物做好的事件会导致某个人做某个动作(某个服务员喊你的订单号码,
你听到你的号码被喊到去取食物),在编程领域,我们称这个为回调(callback function)。
* */

//在计算机网络中,localhost(意为“本地主机”,指“这台计算机”)
// 是给回路网络接口(loopback)的一个标准主机名,相对应的IP地址为127.0.0.1

/* cd
cd 目录名:进入特定的目录。如果看到有个目录显示为:abcdef 就
输入:cd abcdef进入该目录。
cd\ 退回到根目录。
cd..退回到上一级目录。 */

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值