首页 > 文档
CPU 过载保护设计:如何在服务层面确保系统稳定?
- 2024-05-30
- 1701 ℃
过载保护
假设一种场景,我们去银行办事,大家都知道需要拿号排队,银行每 10 分钟处理 1 个人的业务,而每 10 分钟会进来 2 个人,这样每 10 分钟就会积压一个用户,然后偶数进来的用户还需要多等 10 分钟,从而就会导致每个人的等待时长是 ((n + 1) / 2 - 1 + (n + 1) % 2) * 10。
其中变量 n 为第几个进来的用户。随着 n 越大,等待的时间就越长,如果没有及时制止,银行将永远都是饱和状态。长时间饱和工作状态,银行人员将会很辛苦,从而无法更好服务用户。一般情况下,在银行都会有一定的取号上限或者保安会提示无法再服务了,这就是一个过载的保护,避免因事务积压,导致系统无法提供更好的服务。
以上是一个简单的例子,接下来我们从技术层面介绍过载保护概念,而由于 Node.js 最大的性能损耗又在于 CPU,因此又需要进一步了解什么是 CPU 的过载保护。
1.什么是过载保护
这个词最早出现是在电路方面,在出现短路或者电压承载过大时,会触发电源的过载保护设备,该设备要不熔断、要不跳闸切断电源。
在服务端也是相似的原理,首先我们需要设计一个过载保护的服务,在过载触发时,切断用户服务直接返回报错,在压力恢复时,正常响应用户请求。
2.CPU 过载保护
在 Node.js 中最大的瓶颈在于 CPU,因此我们需要针对 CPU 的过载进行保护。当 CPU 使用率超出一定范围时,进行请求熔断处理,直接报错返回,接下来我们来看下具体的实现原理。
相关内容
精通Spring 4.x 企业应...
结构化面试技巧
湖北农村义务教师情报站...
Java性能权威指南
工具应用:使用 clinicj...
MC为何是应用最广泛的缓...
微服务和K8S集成-探索实践
2012体育专业教师招聘试题
-
程序员修炼之道 专业程序员必知的33个技巧
2024-05-28 1310
-
优化设计,在 IO 方面应该注意哪些要点
2024-05-24 1115
-
人工智能:改变世界,重建未来
2024-05-28 1537
-
高并发设计必须学的知识点有哪些?
2024-05-24 1586
-
中医针灸推拿技术
2024-06-18 1588
-
人事档案表 - 企业管理表格
2024-07-30 1342
-
自制编程语言
2024-05-24 1184
-
征服C指针
2024-05-24 1477
-
Node.js 实战
2024-05-28 1394
-
2025李永乐薛威王世安数学全程班
2024-08-19 1626
文章评论 (0)
- 这篇文章还没有收到评论,赶紧来抢沙发吧~


下载完整资料
点击分享文章