关灯
首页
论坛首页
大咖专栏
大咖专栏
热点资讯
热点资讯
精彩活动
精彩活动
关于
关于
本版
文章
帖子
用户
登录
注册
快捷登录
投稿
EOIT论坛
›
社区交流
›
WEB前端
›
什么时候不应使用 Node.js?
返回列表
什么时候不应使用 Node.js?
[复制链接]
老蚊子
发表于 2019-5-31 08:39:52
|
显示全部楼层
|
阅读模式
1.带有关系型数据库的服务器端 Web 应用
例如,将 Node.js + Express.js 与 Ruby on Rails 进行比较,当涉及到关系数据访问时,显然后者更合适。
与其竞争对手相比,Node.js 的关系型数据库工具仍然相当原始。另一方面,Rails 提供了开箱即用的数据访问设置以及数据库架构迁移支持工具,另外还有其他的 Gems。 Rails 及类似框架拥有成熟的且经过验证的
Active Record
或
Data Mapper
数据访问层实现,如果你想要尝试在纯 JavaScript 中复制这些功能的话,那么祝你好运。
不过,如果你真的倾向于用 JS 实现一切,请查看
Sequelize
和 [Node ORM2](
github.com/dresende/no…
ORM2)。
如果仅仅是把 Node.js 用作面向公众的界面,同时用 Rails 后端访问关系数据库,这是可以的,而且这种方式并不罕见。
2.繁重的服务器端计算与处理
当涉及到繁重的计算时,Node.js 并不是最好的平台。你绝对不想用 Node.js 去构建一个
Fibonacci 计算服务器
。通常,任何 CPU 密集型操作都会通过事件驱动的非阻塞 I/O 模型来抵消 Node 提供的所有吞吐量优势,因为当线程被数字运算占用时,任何传入请求都将被阻止。
正如前面所说的,Node.js 是单线程的,只使用一个CPU核心。在多核服务器上添加并发性时,Node 核心团队以
cluster module
的形式完成一些工作。你也可以很容易地在
反向代理 nginx
的后面运行几个 Node.js 服务器实例。
如果使用群集,你仍然应该将所有繁重的计算放到在更合适的环境下编写的后台进程中,并使它们通过像 RabbitMQ 这样的消息队列服务器进行通信。
即使你所有的后台处理最初可能在同一服务器上运行,这种方法也有可能实现非常高的可伸缩性。这些后台处理服务可以轻松地被分发到单独的工作服务器,而无需对前置 Web 服务器负载进行配置。
当然,你也可以在其他平台上使用相同的方法,但是使用 Node.js,你可以获得我们所讨论的高 reqs/sec 吞吐量,因为每个请求都是一个非常快速有效的小任务。
作者:前端先锋
链接:
https://juejin.im/post/5cecdf606fb9a07ed7405ecd
回复
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
老蚊子
版主
1
关注
13
粉丝
75
帖子
发送私信
收听TA
Ta的主页
热门图文
百杰184开班了!~~~
微信小程序插件系列(一)日历插件
中国平安产品经理和app开发打架视频事件始
国信安教育百杰☆☆☆就业信息☆☆☆
常见的js设计模式,面试必备
如何有效的学习Web前端开发?
热门帖子
新手报到
报道贴
新手报到
百杰184开班了!~~~
WEB前端
微信小程序插件系列(一)日历插件
新手报到
中国平安产品经理和app开发打架视频事件始
WEB前端
常见的js设计模式,面试必备
WEB前端
如何有效的学习Web前端开发?
WEB前端
微信小程序-音乐播放器详解
新手报到
常用酷狗音乐资源接口
排行榜
日
周
月
1
百杰197开班啦!~~~
百杰197部开班啦!~~~ 方向:web
601
0
2
✿✿✿国信安教育百杰191部测试班级信息✿
✿✿✿国信安教育百杰191部测试班级信息✿✿✿ 班 级:百杰191部 专业方向:软件测
627
1
3
国信安教育百杰195部前端班
✿✿✿国信安教育百杰195部前端班级信息✿✿✿ 班 级:百杰w195部 专业方向:web
598
0
4
html中如何让文字竖排
在写网页时,为了让页面好看,可能会考虑使用竖排文字,在使用时发现不简单.第一种:原始
497
0
5
可查询每个时代流行配色组合的Color Leap
每个时代都有代表的文化和呈现样貌,如果对于一些绘画或摄影作品有研究,可能也会发现
427
0
6
设计页面单薄,如何提升质感?
质感是什么?如何让画面拥有更高端的质感?本文由质感的原理出发,深入分析质感表现所
551
0
7
面型图标vs线型图标,哪一种的用户体验会更
什么时候该用线型图标,什么时候该用面型图标,不知道大家平时有没有去思考过?我自己
393
0
8
193JAVA开班了
看过来,193的哥哥姐姐们。
618
0
9
js中 ECMAScript位运算符
ECMAScript位运算符: https://blog.csdn.net/qwlzxx/article/details/46669985 摘抄
561
0
10
UI布局中颜色的使用原理
色彩在GUI的交互中扮演着重要的角色。合理的使用颜色,能帮助用户快捷的发现界面中的
418
0
1
百杰184开班了!~~~
百杰184部WEB开班啦!~~~
9628
57
2
微信小程序插件系列(一)日历插件
近期有玩小程序的朋友问我在小程序中如何引用插件。那么近期就给大家推荐几款实用的微
9359
1
3
中国平安产品经理和app开发打架视频事件始
据爆料,中国平安一个产品经理和APP开发人员在办公室直接打起来了,据称是产品经理向A
7300
2
4
国信安教育百杰☆☆☆就业信息☆☆☆
国信安教育2018年学员就业信息展示——你也可以像他们一样拿高薪哦!!!
6709
16
5
常见的js设计模式,面试必备
每个JS开发者都力求写出可维护、复用性和可读性高的代码。随着应用不断扩大,代码组织
5727
19
6
如何有效的学习Web前端开发?
一个好的Web前端工程师在知识体系上既要有广度,又要有深度,所以很多大公司即使出高
5396
8
7
微信小程序-音乐播放器详解
大家好,上一篇分享了如何获取酷狗的音乐资源,今天给大家聊一下微信小程序中音
5320
2
8
常用酷狗音乐资源接口
这几天在大学带小朋友们玩微信小程序,有的学生不知道如何获取到音乐资源,今天
4157
4
9
论坛攻略-----如何获得积分与安仔币、快速
国信安论坛——EOIT上线啦!!!赶快来玩转论坛,获取积分,领取礼品哟!!! 积分与
4149
0
10
如何从零开始学Java
虽然Java面象对象很多东西都是被封装好的直接用,相对其他语言没那么复杂,但是学的东
4071
1
1
百杰197开班啦!~~~
百杰197部开班啦!~~~ 方向:web
601
0
2
✿✿✿国信安教育百杰191部测试班级信息✿
✿✿✿国信安教育百杰191部测试班级信息✿✿✿ 班 级:百杰191部 专业方向:软件测
627
1
3
国信安教育百杰195部前端班
✿✿✿国信安教育百杰195部前端班级信息✿✿✿ 班 级:百杰w195部 专业方向:web
598
0
4
html中如何让文字竖排
在写网页时,为了让页面好看,可能会考虑使用竖排文字,在使用时发现不简单.第一种:原始
497
0
5
可查询每个时代流行配色组合的Color Leap
每个时代都有代表的文化和呈现样貌,如果对于一些绘画或摄影作品有研究,可能也会发现
427
0
6
设计页面单薄,如何提升质感?
质感是什么?如何让画面拥有更高端的质感?本文由质感的原理出发,深入分析质感表现所
551
0
7
面型图标vs线型图标,哪一种的用户体验会更
什么时候该用线型图标,什么时候该用面型图标,不知道大家平时有没有去思考过?我自己
393
0
8
193JAVA开班了
看过来,193的哥哥姐姐们。
618
0
9
js中 ECMAScript位运算符
ECMAScript位运算符: https://blog.csdn.net/qwlzxx/article/details/46669985 摘抄
561
0
10
UI布局中颜色的使用原理
色彩在GUI的交互中扮演着重要的角色。合理的使用颜色,能帮助用户快捷的发现界面中的
418
0
作者专栏
750
刘大阳
200
大菲
161
安仔
139
意大利炮
114
小川
84
丘丘
关闭
站长推荐
/1
论坛攻略-----如何获得积分与安仔币、快速升级
国信安论坛——EOIT上线啦!!!赶快来玩转论坛,获取积分,领取礼品哟!!!
查看 »
快速回复
返回顶部
返回列表