自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Node.js不是銀彈 但它仍然是顆子彈

開發(fā) 前端
本文的作者Craig本文的作者 Craig 是一個住在紐約的自由軟件開發(fā)者,他在最近的看到了一篇名為《如果你正在使用Node.js,你就是誤入歧途》的文章,文章對Node.js橫加指責,Craig對此表示不滿,于是寫下了下面的文章.

 

[[58184]]

 

本文的作者Craig本文的作者 Craig 是一個住在紐約的自由軟件開發(fā)者,他在最近的看到了一篇名為《如果你正在使用Node.js,你就是誤入歧途》的文章,文章對Node.js橫加指責,Craig對此表示不滿,于是寫下了下面的文章:

我真的不知道為什么有人這樣的討厭 Node.js。你也看見了網(wǎng)上有大量關于 Node.js 的文章和高調(diào)的言論,就好象 Node.js 是解決所有問題的良方。不是的。就像現(xiàn)有的很多其它框架和語言一樣,它在某些事情上表現(xiàn)的很優(yōu)良,而在其它事情上卻很差。

Node.js,單從我的理解上講,它的設計目標是更好的通過網(wǎng)絡快速、實時的傳輸少量字節(jié)信息。服務器端事件處理,即時消息應用,實時游戲,以及協(xié)作工具,這都是可以使用它的很好的例子。拿Trello做個例子。Trello 是一個實時協(xié)作應用程序,使用 Socket.io 和 Node.js 來實現(xiàn)客戶端之間的實時事件傳播和狀態(tài)變換。你可以使用頻繁的探詢或用ajax長周期探詢來完成相同的事情,但這兩種方法在服務器端占用了不必要的worker線程,需要處理額外的請求。Node.js 從某方面講,本質(zhì)上正是擅長做這類事情。它的異步事件處理為基礎的架構(gòu)使得接收、處理、發(fā)送實時事件消息變得簡單,容易,而且非常有速度。

 

[[58185]]

 

可同時,Node.js 不是、不是特別的擅長做計算。比如,如果你想做一個能返回斐波那契數(shù)列(Fibonacci)序列中第n個數(shù)的API,用 Node.js 必然不是一個很好的選擇,為什么?所有的原因都在于,人們之所以要使用 Node.js 都是為了一個避免去等待什么事情。相比等待一個數(shù)據(jù)庫返回查詢結(jié)果,Node.js的做法是觸發(fā)一個查詢動作,設置一個回調(diào)事件。這樣,當查詢在執(zhí)行時,你的程序可以去做其它事情(比如處理其它請求)。這使得 Node.js 看起來非常的快,通常不需要使用多個CPU。然而,在我們的這個計算斐波那契數(shù)列的例子中,程序不需要去等待任何事情。這個API返回結(jié)果的速度直接依賴于計算的速度。所以,如果用另外一種計算能力更強的語言,比如Haskell或Scala,更合適。

所有的這些說明了什么觀點?觀點就是,如果一個框架只是為了解決任務A而設計,而你卻抱怨它不能很好的完成任務B,這是愚蠢而荒謬的。Node.js 在它被設計去做的事情上表現(xiàn)的異常優(yōu)秀——所以,就不要去嚷嚷它不擅長做其它事情了。

原文:http://www.aqee.net/node-js-isnt-a-silver-bullet-but-its-still-a-bullet/

【編輯推薦】

  1. 關于Node.js:PHP開發(fā)人員應了解的5點
  2. Node.js后端框架設計構(gòu)想
  3. 走近Node.js的異步代碼設計
  4. Node.js專區(qū)
  5. 什么是Node.js?
責任編輯:陳貽新 來源: 外刊IT評論
相關推薦

2011-09-02 14:47:48

Node

2022-08-28 16:30:34

Node.jsDocker指令

2017-10-22 21:04:44

HPC英特爾

2018-08-03 09:32:06

Linux 系統(tǒng) Windows

2021-12-08 14:49:01

物聯(lián)網(wǎng)安全物聯(lián)網(wǎng)IOT

2013-11-01 09:34:56

Node.js技術

2015-03-10 10:59:18

Node.js開發(fā)指南基礎介紹

2009-02-12 09:03:18

虛擬存儲InVistaUSP

2017-07-10 17:30:13

2023-10-04 07:35:03

2023-03-02 23:09:53

Node.jsC++JS

2011-09-09 14:23:13

Node.js

2011-11-01 10:30:36

Node.js

2011-09-08 13:46:14

node.js

2013-09-10 09:24:06

2012-10-24 14:56:30

IBMdw

2011-11-10 08:55:00

Node.js

2022-07-12 14:28:05

網(wǎng)絡安全數(shù)據(jù)安全網(wǎng)絡情報

2019-07-24 09:39:55

容器安全IT

2020-04-26 09:17:08

哈希傳遞身份驗證攻擊
點贊
收藏

51CTO技術棧公眾號