node.js应用真正高并发高性能的核心关键本质?
发布于 9 年前 作者 flyingcodes 10243 次浏览 最后一次编辑是 8 年前 来自 问答

假如你公司开发一个应用,给用户在你公司的海量数据中搜索一些数据出来,这些海量数据可能存储在10台,100台或者1000台服务器中,并且要求在1万并发请求的情况下也要30毫秒内返回结果。

于是乎你公司的C/C++或java,或者.net团队耗时1个月开发出了一套完整的系统,果然在1万并发请求的情况下,30毫秒内也返回结果。不过这套系统需要30台服务器作为支撑。

前端团队新来的一个node.js大神了解这件事情之后,向老板汇报,说他只要一天时间,用node.js就可以开发同样功能的程序,并且也可以在1万并发请求的情况下30毫秒内返回结果,而且!而且,而且部署的时候只要1台5000元的PC机! 然后node.js大神用一天的时间噼里啪啦地写出了程序并部署,第二天给老板验收,老板惊叹不已!

然后老板的新闻团队将这事情发布出去,让整个node.js社区一片澎湃!

36 回复

@CoderIvan 你说的传说是指node。js高并发高性能?

看了半天没看懂。。。

标题党害死人

存储在 1000 服务器也算牛逼了, 估计 Node.js 做不好… 虽然我不熟悉这块…

@i5ting 要么你没仔细看,要么你真不懂

@SoftwareDreamer 哪里标题党了?

@jiyinyiyong 举个栗子而已,数据已经有了

那最后核心关键本质是什么?

@artisan 你看完了没有啊?文章里面不是描述的很清楚?

没看懂想表达什么

@1340641314 中文的也看不懂?

其实重点在哪里?

@kiroChen 前面铺垫,后面重点

不要神化node,计算量在那里

楼主逗比,鉴定完毕

@fish 呵呵,那说明你没看懂我说的啊

@TakWolf 哪里逗了?

过度夸张了吧。

@flyingcodes

帅的人正在忙着加班赚钱

丑的人还在这里发钓鱼贴

弱智儿童欢乐多

@luluzero 有点夸张,不过确是事实

@TakWolf 又没链接,怎么钓鱼?

@yakczh 弱智儿童肯定看不懂

nodejs 的场景就是处理高并发,少计算(CPU)的情况

前边说这些海量数据可能存储在10台,100台或者1000台服务器中 后边说只要1台5000元的PC机 那实际上两套系统是否真的在多台服务器大量数据环境中测试通过?

我大胆猜测跟之前那个“nodejs唯一的优势是什么”的帖子差不多,大概说前端的人不懂后端吧。 如果不是这个意思,我在这里道歉我误会了。

意思就是仅仅异步调用返回快,并没执行完计算。

哪个网站发来看看就知道了 自豪地采用 CNodeJS ionic

@569125965 总算有个看懂了!!!!!!!!!

@William17 这里的意思不是说前端的人不懂后端,你楼下已经看懂了。 这里说的是node.js所谓的“高性能高并发”能力,其实正是node.js的软肋。 了解这一点才有助于你利用node.js构建高性能高并发的应用

@wangshaochun bingo!是的,要处理复杂计算还必须交给真正的后端团队。

@flyingcodes 我的意思是用1台5000元PC机取代30台服务器,感觉把NodeJS神话得太厉害

我现在在公司用NodeJS开发UDP服务器, 所以对NodeJS实际并发这块多少知道些。

这里的意思不是说前端的人不懂后端,你楼下已经看懂了。 这里说的是node.js所谓的“高性能高并发”能力,其实正是node.js的软肋。 了解这一点才有助于你利用node.js构建高性能高并发的应用

我思路有点跟不上,能通俗点不?

@CoderIvan 哈哈,文章里面没有提到取代了30台服务器,这恰恰是文章里面隐藏的关键。

NodeJS大神只是做了件华丽的嫁衣给老板看而已,然后把计算丢给真正的后端处理,其实就是node.js就是用于伪后端或者访问量并发量都很小的小型后端,当然也可以部署到集群里面作为独立的后端,但是需要的服务器数量非常庞大

@CoderIvan 就是如果想要高并发高性能,就把计算扔给真正的后端,这些是他们的强项,node.js:接受请求 -> 调用后端API -> 返回结果

@CoderIvan 你说你公司用NodeJS开发UDP服务器,如果纯粹只用node.js,我相信单机调试没问题,内部测试没问题。但是部署正式环境之后,到达一定访问量和并发量的时候问题肯定会多出来

回到顶部