当前位置: 首页 > news >正文

《数据密集型应用系统设计》笔记

第一章 可靠性、可伸缩性、可维护性

现今很多应用程序都是数据密集型(data-intensive),而非计算密集型(compute-intensive)。因此CPU很少成为这类应用的瓶颈,更大的问题通常来自数据量、数据复杂性、以及数据的变更速度。影响这类程序的三个关键因素是可靠性、可伸缩性、可维护性。

  • 可靠性:程序在困境中仍能正常工作。

困境一般指:硬件故障、软件故障和人为错误。硬件故障包括机房断电、错误拔网线、硬盘崩溃等,一般通过增加单个硬件的冗余度即可解决,足以让服务器运行很多年。硬件故障几乎是独立发生,而软件故障往往跨节点相关,造成系统失效。但硬件故障、软件故障导致的服务中断仅占20%左右,主要原因在于人为错误。人是最不可靠的。

正常工作指:正确完成功能,并能达到期望的性能水准

  • 可伸缩性:描述系统应对负载增长能力的术语

负载增长:系统负载已经从一万个并发用户增长到十万个并发用户,或者从一百万增长到一千万

负载参数:动作的查询频率。以推特为例子,用户查询的频率与关注者发推文频率的不同,决定了系统给用户呈现关注者推文的实现方法。而关注者又可按粉丝量进一步划分为名流和其他,进一步完善方法。

描述性能:吞吐量和响应时间。响应时间往往关注百分点和中位数。

应对方法:纵向伸缩和横向伸缩。

  • 可维护性:可操作性、简单性、可演化性(即可扩展性)。
http://www.jsqmd.com/news/298783/

相关文章:

  • Java毕设项目:基于springboot的社区诊所在线挂号与排队系统(源码+文档,讲解、调试运行,定制等)
  • 机器学习三大流派:监督、无监督与强化学习
  • 【课程设计/毕业设计】基于springboot智能在线预约挂号系统基于springboot的社区诊所在线挂号与排队系统【附源码、数据库、万字文档】
  • Java计算机毕设之基于springboot的诊所预约挂号系统社区诊所在线挂号与排队系统(完整前后端代码+说明文档+LW,调试定制等)
  • 【毕业设计】基于springboot的社区诊所在线挂号与排队系统(源码+文档+远程调试,全bao定制等)
  • “土木人转行软件测试学习第3天”-黑盒测试方法论-边界值分析法
  • 2025年必看!台灯品牌排行大公开,好台灯选它不踩雷!课桌椅/教室灯/教育照明/黑板灯/落地灯/台灯,台灯供应商怎么选
  • JavaScript 核心解析:特性与三十年发展历程
  • 探讨绩效薪酬顾问咨询,哪家费用低且服务好呢?
  • rohs检测仪制造企业选哪家,深圳骏辉腾能解决选型难题吗?
  • 电商API接口的应用与简要分析||taobao|jd|微店
  • 基于位置服务的二手图书回收平台
  • 吐血推荐本科生必用TOP8 AI论文网站
  • 运算符:逻辑运算符短路问题以及 6.三元运算符
  • 【开题答辩全过程】以 景区游乐管理系统的设计与实现为例,包含答辩的问题和答案
  • 计算机Java毕设实战-基于Java+springboot的百货生活日用品销售系统的设计与实现【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 华为云国际版-东南亚篇
  • 贪心|double
  • 新手学习编程从哪个语言开始
  • Java计算机毕设之基于springboot+vue的日用品销售系统设计与实现基于springboot的日用品销售系统的设计与实现(完整前后端代码+说明文档+LW,调试定制等)
  • JavaScript 和 Python 哪个更适合初学者?
  • Java毕设项目:基于springboot的日用品销售系统的设计与实现(源码+文档,讲解、调试运行,定制等)
  • 【课程设计/毕业设计】基于SpringBoot的生活用品销售系统的设计与实现基于springboot的日用品销售系统的设计与实现【附源码、数据库、万字文档】
  • 【开题答辩全过程】以 基于springboot 的豪华婚车租赁系统的设计与实现为例,包含答辩的问题和答案
  • 【开题答辩全过程】以 基于Django技术的药品批发管理系统为例,包含答辩的问题和答案
  • 【毕业设计】基于springboot的日用品销售系统的设计与实现(源码+文档+远程调试,全bao定制等)
  • 记施一公院士历二行
  • 【开题答辩全过程】以 基于springboot 的雪具租赁管理系统的设计与实现为例,包含答辩的问题和答案
  • Java计算机毕设之基于springboot的无人机销售系统的设计与实现(完整前后端代码+说明文档+LW,调试定制等)
  • 【方案】小型支付商城 MVC/DDD