初识nodejs

以前听同学说nodejs,即可前端又可后台,让我以为nodejs像是javascript下一种衍生的语言,后来了解到不是这样。

nodejs不是像jquery一样的一种框架,也不是库,nodes是一个让javascript运行在服务端的一个平台,nodes让javascript可以运行在浏览器之外,实现强大的伸缩能力,来自v8的javascript引擎让 nodejs的jit(just-in-time即时编译)速度可以媲美在本地跑代码,而且node内建http服务器,不用像PHP等还要实现搭建一个apache的服务器。

使用nodejs可以做什么?

自行百度。

进一步了解:

1.异步式i/o与事件驱动

这是node的最大特点,传统的多线程模型是为每一个业务逻辑提供一个系统线程,通过系统线程切换来弥补同步式i/o调用时的时间开销。而node则采用的是单线程的异步请求方式,避免了繁琐的上下文切换,node在执行过程中会维护一个事件队列,程序在执行时进入队列循环,等待下一个事件的到来。每一个异步i/o请求完成后会被推送到事件队列,等待程序进程进行处理。

node的异步机制是基于事件的,磁盘i/o,网络通信,数据库查询,都以这种方式请求,返回的结果由事件循环处理。

(但是我看科技文章看到有程序员吐槽过node的callback),一旦深层嵌套,很难理清。

不过node提供一些第三方模块解决办法,比如async,jscex,eventproxy等,这里不作深究。

推荐阅读更多精彩内容

  • 说明:该学习笔记参考《深入浅出Node.js》在学习过程中,添加了自己的理解和适当的补充!仅供参考! NodeJs...
    秋意思寒阅读 125评论 0 1
  • 什么是NodeJs Node.js是一个基于ChromeV8引擎的Javascript运行环境。Node.js使用...
    accord阅读 95评论 0 1
  • 前言我的天呐,上了一个上午的课,下午呆呆地在图书馆用python玩并发,晚上就玩玩NodeJS,其实是这样的,O(...
    AlicFeng阅读 9,447评论 19 35
  • 1 nodejs 中的异步存在吗? 现在有点 javascript 基础的人都在听说过 nodejs ,而只要与 ...
    htoo阅读 6,318评论 4 51
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 132,635评论 18 139