只接受发布货源信息,不可发布违法信息,一旦发现永久封号,欢迎向我们举报!
1064879863
16货源网 > 餐饮行业新闻资讯 > 网站建设公司 >  在web开发中,node.js做中间层,应用性能有所降低,是指的哪些性能有所降低?


在web开发中,node.js做中间层,应用性能有所降低,是指的哪些性能有所降低?

发布时间:2019-09-15 10:09:58  来源:网友自行发布(如侵权请联系本站立刻删除)  浏览:   【】【】【
六个字:反向代理损耗因为客户端将不会直接与后端服务连接,而需要经过 node.js 代理,并且由于语言本身的问题,js 执行并不快,会导致客户端等待时间大幅度增加。虽然如此,node.js 扛高并发的
在web开发中,node.js做中间层,应用性能有所降低,是指的哪些性能有所降低?

六个字:反向代理损耗

因为客户端将不会直接与后端服务连接,而需要经过 node.js 代理,并且由于语言本身的问题,js 执行并不快,会导致客户端等待时间大幅度增加。

虽然如此,node.js 扛高并发的特性还是具有一定优势,虽然会感觉等待时间变长,但在高并发时却可以在单位时间内支撑更多的连接。

即使如此,还是要慎重考虑才能做出使用 node.js 中间层的决定。例如,如果后端服务使用 go 语言,其抗并发能力本身就非常出色,无脑加 node.js 只是自寻短见。

还有,即使使用 node.js 做中间层,也需要选择合适的方案去连接后端服务,例如再去使用 http 协议来连接后端服务就非常不合适,不但没有好处,还大大降低性能,应该选用基于 tcp 的 rpc 方案连接才为合适。

js执行不快,呵呵呵,大嘴巴抽死你

反向代理消耗,更是无稽之谈,NGINX没消耗么?呵呵呵,没见过加一环节没有损耗的。

问题的核心是你怎么用。结合业务场景才有有意义。

如果只是api透传,那么必然性能会变差,但也只是rpc或http往返的消耗。毫秒级,没有差多少,几乎可以忽略不计。各个语言在处理逻辑上会有性能差异,如果只是client,会有多少差异?

如果对返回结果做了处理,那么对前端的便利,远远大于这点损耗。机器这么便宜,人工要更贵

如果返回的结果,在业务里,可以缓存,哪怕只能一分钟,你在中间层加上缓存,既能扛大流量,也能减少请求次数,不是提效吗?走缓存比请求更短时间,性能不好?

没有上下文吗,这个问题?

你直连后端,和经过一个中间层,肯定有损耗啊!

责任编辑:
热门阅读排行
© 16货源网 1064879863