1.1. 谁在用Nodejs?
从Nodejs官方网站的企业登记页(https://github.com/joyent/node/wiki/Projects,-Applications,-and-Companies-Using-Node),包括我们熟知的公司有LinkedIn, Yahoo, Paypal, eBay, Walmart,Groupon 还有很多的中小型公司,海内的公司如雪球、淘宝、网易、百度等也都有很多项目运行在Node.js之上。
1.2. 为什么要用Nodejs?

个人认为Node有4大上风:
1. Nodejs基于Javascript措辞,不用再单独新学一弟子疏的措辞,从而降落了学习的门槛。同时,Javascript措辞在Web前端开拓中至 关主要,特殊HTML5的运用必须要利用,以是前后台统一措辞,不仅可以实现程序员的全栈开拓,还可以统一公共类库,代码标准化。单凭这一 点,Nodejs就已经赢得市场的青睐了。2. Nodejs并没有重新开拓运行时环境,而是选择了目前最快的浏览器内核V8作为实行引擎,担保了Nodejs的性能和稳定性。3. Nodejs的开拓非常高效,而且代码大略,得益于Nodejs的单线程机制。而Nodejs的另一个特点异步编程,让Nodejs处理IO密集型运用有了明显的上风。个人觉得,用Nodejs比Java做Web开拓要高效10倍,比PHP的代码还要大略。4. Nodejs的社区在壮大,不仅包的数量在快速增加,而且包的质量也要明显好于其他措辞的。很多明星级的包,都是大略而机动的,为了开拓者的利用习气而设 计。常用到的工具包,如socket.io, moment.js, underscore.js, async.js, express.js, bower.js, grunt.js, forever.js…,社区生动,轮子多
当然很多公司也都有自己的利用情由。
动态措辞:开拓效率非常高,并有能力构建繁芜系统,如ql.io。性能和I/O负载:Nodejs非常好地办理了IO密集的问题,通过异步IO来实现。连接的内存开销:每个Node.js进程可以支持超过12万生动的连接,每个连接花费大约2K的内存。操作性:实现了Nodejs对付内存堆栈的监控系统。1.3. Nodejs不适宜的领域
每一种措辞或平台都有不善于领域,对付Nodejs来说最不善于的领域在于CPU和内存的编程操作。
1. 打算密集型运用,让Javascript和C去拼打算性能,估计是不可能赢的。2. 内存掌握,让Javascript和Java比较繁芜数据类型定义,也是很困难的。由于Javascript的面向工具是基于JSON的,而Java是直策应用内存构造。以是,通过JSON序列化和反序列的过程掌握内存,Javascript就已经输了。3. 大内存的运用,由于V8引擎有内存设计的限定,32位环境中最大堆是1G,64位环境中最大堆也不到2G,如果要一次读入10G数据,对付Nodejs来说也无法实现。4. 静态做事器,虽然Nodejs的上风在IO密集集运用,但是和Nginx的处理静态资源还是有很大的差距。