NodeJs基础

NodeJs是一个服务端运行javascript的平台,跟asp.net,java,python,ruby,php一样,把javascript的定位从前端给移到了后端, 以Google V8为javascript引擎,所以javascript执行效率相当高,跟一般的web后台开发语言不一样,NodeJS的特点是异步,无阻塞的运行程序,所以开发NodeJS程序时,需要把所有的业务逻辑拆分成一个一个的模块,以回调的方式来执行,也许这是它的一个不足,但是现在已经有相应的扩展模块简化异步模块的开发。

   NodeJS能够提供什么样的功能?

   1.命令行工具设计       2.web系统设计

   3.客户端javascript编译器

   4.WEB服务器

      NodeJS与一般的后台编译性语言有什么不同?        1.NodeJS本身包含一个http服务器,不像asp.net程序需要一个IIS,或者java的程序需要一个apche

   2.NodeJS是异步IO,事件驱动的;一般的程序调用都是执行一个命令之后,线程阻塞,一直等到命令成功之后,才会去执行下面的事情,但是NodeJS不一样,所有的IO,网络通信,磁盘操作都是由事件来控制的,Nodejs进程在同一时刻只会处理一个事件,完成后立即进入事件轮询并检查处理后面的事件。如图

  

 

    3.NodeJS是单线程执行的,除非是多CPU,一般一个CPU都是一个线程执行的,这样可以清除线程上下文切换带来的性能损失

猜你喜欢

转载自zenman.iteye.com/blog/2069301