node

简介:

Javascript之所以能在浏览器运行,是因为浏览器提供一个“上下文环境”,它定义了Javascript可以做什么事情。

Nodejs,说白了,其实也是一个“上下文环境" , 这个上下文环境,允许在后端运行Javascript代码。

Nodejs使用Google的V8虚拟机,来解析和执行Javascript代码。

所以,nodejs = 运行时环境 + 库。

应用:

nodejs可以写web(网站后台,网站前端),写服务(游戏后台,IM...),写工具(抢票,爬虫....)。还可以写更多的东西。

优点:

1:单线程+非阻塞IO = 性能提升,代码简洁

它通过事件轮询(event loop)来实现并行操作。由于是单线程,所以基本不用考虑多线程的问题,例如线程上下文切换,变量加锁解锁等等。

2:强大的npm 设计 = 海量代码库

Node.js 的包管理器 npm 设计得比 python 和 ruby 好很多。有很多的 module 开发者。

3:精准控制每个细节 = 高性能,大并发

nodejs是一个非常靠近底层的工具库(+ 环境)。Node.js 可以精细的控制 Request 和 Response 的时间和内容,websocket 似乎就是为 Node.js 而生的。(配合 http://socket.io 这库之后,在 realtime webapp 这个领域,Node.js 已经没有对手了。看淘宝对nodejs的重视度和使用量就知道了。)

使用经验小结:

1:javascript语法是非常自由的,而且nodejs也支持用c/c++去写addon(nodejs的插件)。但是,由于js的性能。。。所以,如果你的需求业务非常复杂的话,不建议使用。如果你的需求是轻业务,重性能,那么可以考虑一下nodejs。

2:很少的业务需求,高强度的密集计算。业务用js实现,计算用c++实现。但是,用c++写addon之前,会有一定的学习曲线。

(备注:Java + C++/ PHP + C++ / Nodejs + C++ ,这三种做法,第一种更多的是大型架构的结合使用做法,第二种很多中小型项目都在使用,最后者就是我刚刚提到的,目前很少人用,但是性能测试确实不错,有一定的潜力。)

3:写blog,写小型的网站,基本没什么学习曲线,前后端都是javascript,方便前端的同学接触后端,js一统天下?。

4:nodejs的调试困难,编码不方便等等很多“缺点”,老早就不存在了。现在的nodejs对于线程的管理使用,也在发展的很不错。

5、对Node的优点和缺点提出了自己的看法?

优点:

1. 因为Node是基于事件驱动和无阻塞的,所以非常适合处理并发请求,因此构建在Node上的代理服务器相比其他技术实现(如Ruby)的服务器表现要好得多。

2. 与Node代理服务器交互的客户端代码是由javascript语言编写的,因此客户端和服务器端都用同一种语言编写,这是非常美妙的事情。

缺点:

1. Node是一个相对新的开源项目,所以不太稳定,它总是一直在变。

2. 缺少足够多的第三方库支持。看起来,就像是Ruby/Rails当年的样子(第三方库现在已经很丰富了,所以这个缺点可以说不存在了)。

总结:

nodejs现在发展很快,非常出名(出名不代表很多人用)。BUT,nodejs在后端的世界怎么算,都只是一个很有潜力的小孩子,现在的地位和java,php的地位还是差距非常大。因为nodejs本来就不合适写复杂的业务,nodejs目前更多的合适去做工具之类的开发。除非nodejs在设计的方向上能做出更大的变革,否则也很难和java平分天下。当然,nodejs本来的诞生目的也不是做“大佬”。nodejs很像geek,追求自由发展。

ƴݴ���

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,670评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,928评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,926评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,238评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,112评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,138评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,545评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,232评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,496评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,596评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,369评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,226评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,600评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,906评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,185评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,516评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,721评论 2 335

推荐阅读更多精彩内容

  • Node.js是目前非常火热的技术,但是它的诞生经历却很奇特。 众所周知,在Netscape设计出JavaScri...
    w_zhuan阅读 3,603评论 2 41
  • Node.js是目前非常火热的技术,但是它的诞生经历却很奇特。 众所周知,在Netscape设计出JavaScri...
    Myselfyan阅读 4,057评论 2 58
  • 会很难过吗 问你也是问自己 这种强烈的自卑感 到底什么时候才会消失 自己的路在自己脚下 何必关心别人 你的人生 只...
    切慕弥生阅读 50评论 0 0
  • 掌门_艾老师阅读 161评论 0 0
  • 时晓伟(石船) 周六,去参加一个分别三十多年的同学会,觥筹交错之间,真的有一些时光荏苒,契阔别年的惊鸿之感。...
    石船先生的醬汤阅读 839评论 0 3