与其他Web技术相比,node.js的优点

时间:2011-06-26 13:19:17

标签: node.js

据我所知,node.js对Java Script程序员很有用,他们现在可以在服务器端开发。此外,一些Java Script代码可以从客户端移植到服务器端。

与其他服务器端技术(Java Web框架,node.jsRoR等)相比,Django还有其他优势吗?

4 个答案:

答案 0 :(得分:18)

包管理

与Java的Maven node.js相比,包管理系统(npm)是最好的。 对我来说,仅此一点应该足以切换。我建议你看一下这些包裹:

  • 表示
  • socket.io
  • node_redis
  • 猫鼬
  • everyauth

您可以使用http://search.npmjs.org/

搜索包裹

快速

node.js非常快(事件循环非阻塞),并且还具有非常快速的本机绑定(C)。例如node_redis(C绑定)基准:

PING: 20000 ops 46189.38 ops/sec 1/4/1.082
SET: 20000 ops 41237.11 ops/sec 0/6/1.210
GET: 20000 ops 39682.54 ops/sec 1/7/1.257
INCR: 20000 ops 40080.16 ops/sec 0/8/1.242
LPUSH: 20000 ops 41152.26 ops/sec 0/3/1.212
LRANGE (10 elements): 20000 ops 36563.07 ops/sec 1/8/1.363
LRANGE (100 elements): 20000 ops 21834.06 ops/sec 0/9/2.287

积极开发/社区

Ryan Dahl正在非常努力地完成他的项目。此外,node.js现在具有来自例如Joyent的有效支持(赞助商)。社区发展迅速

答案 1 :(得分:11)

性能是主要优势,node.js为每个连接分配一个小堆,而其他服务器端解决方案为每个传入连接创建一个(2MB)线程,当然创建一个线程比分配堆内存要慢得多。其他优点包括node.js的事件导向和非阻塞特性。

答案 2 :(得分:5)

node.js是事件驱动的。虽然大多数其他框架都具有作为附件内置的这种功能(例如通过事件机器),但这只是node.js中的“方式”。我们的想法是,事件驱动的体系结构可以带来更具伸缩性的应用程序(通常由The C10K problem推动)。其次,用JavaScript编写可以降低大多数已经习惯使用该语言的前端开发人员的入门门槛。在我看来,使用它也很有趣,但我不能说我已经为任何高流量应用程序部署了它。它也有炒作机器。最近我迷恋liftscala,但这只是我自己的偏好。

答案 3 :(得分:1)

作为应用程序开发人员,我们有责任应用逻辑来解决问题。前端开发人员在后端开发中遇到的所有问题都有类似的问题。是的,他们的表达方式不同,但它们基本上是同样的问题。

Node通过以离散和理性的方式统一方法来简单地表达这一事实。

通过以相同的方式编写后端,应用相同的逻辑路径,它使转换对开发人员更加透明,简化了他们的工作