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

临沂的各类网站建设东莞网

临沂的各类网站建设,东莞网,wordpress 加图片,wordpress支付功能CHAPTER 2: BACK-OF-THE-ENVELOPE ESTIMATION 在系统设计面试中,有时您会被要求估计系统容量或使用粗略估计的性能需求。根据杰夫迪恩的说法,谷歌高级研究员,“粗略的计算是你使用结合思想实验和常见的性能数字,以获得良好的感觉…

CHAPTER 2: BACK-OF-THE-ENVELOPE ESTIMATION

在系统设计面试中,有时您会被要求估计系统容量或使用粗略估计的性能需求。根据杰夫·迪恩的说法,谷歌高级研究员,“粗略的计算是你使用结合思想实验和常见的性能数字,以获得良好的感觉,哪些设计能满足你的要求?[1]
您需要对可伸缩性基础知识有很好的了解,才能有效地执行系统的后端估计。以下概念应该很好地理解:两个two[2]的幂;每个程序员都应该知道延迟数和可用性数。

2的幂 Power of two

尽管在处理分布式系统时数据量会变得非常大,所有的计算都归结为基础。为了得到正确的计算,关键是要知道数据体积单位采用2的幂。一个字节是由8位组成的序列。ASCII字符
使用一个字节的内存(8位)。下表解释了数据量单位.

近似值全名短名称
101000年前字节1KB
20百万年兆字节1MB
3010万亿年GB字节1GB
401万亿年TB字节1TB
501000万亿年PB字节1PB

每个程序员都应该知道延迟数据 Latency numbers every programmer should know

谷歌的Dean博士揭示了2010年典型计算机操作的时长[1]。一些随着计算机变得更快、更强大,数字已经过时了。然而,这些数字应该还是能给我们一个快慢不同的概念电脑操作。

操作名称时间
1级缓存引用0.5ns
分支 mispredict5ns
2级缓存引用7ns
互斥锁/解锁100ns
主存引用100ns
用zippy压缩1k字节10,000ns=10μs
通过1GB网络传输2KB字节20,000ns = 20μs
内存按照顺序读取1MB250,000ns=250μs
同一个数据中心内的往返500,000ns = 500μs
磁盘寻找10,000.000ns=10ms
从网络中读取1MB10,000.000ns=10ms
从硬盘中读取1MB30,000.000ns=30ms
发送数据包CA(加利福尼亚)->荷兰->CA150,000.000ns=150ms

笔记
Ns =纳秒,
µs =微秒,
ms =毫秒
1秒= 10^-9秒 1µs= 10^-6秒= 1,000 ns 1毫秒= 10^-3秒=1,000µs = 1,000,000毫秒
谷歌的一位软件工程师开发了一个工具,将迪恩博士的数据可视化。这个工具还需要考虑到时间因素。截止年的可视化时延数字如figure2-1所示 2020年(数据来源:参考资料[3])。

在这里插入图片描述
通过分析图2-1中的数字,我们可以得出以下结论:

  • 内存快,磁盘慢。
  • 尽可能避免磁盘查找。
  • 简单的压缩算法速度快。
  • 如果可能的话,在通过互联网发送数据之前压缩数据。
  • 数据中心通常位于不同的区域,数据在数据中心之间传输需要一定的时间。

可用性数据 Availability numbers

高可用性是系统在理想的长时间内持续运行的能力一段时间。高可用性是以百分比来衡量的,100%意味着服务可以零停机时间。大多数服务都在99%到100%之间。服务水平协议(SLA)是服务提供者常用的术语。这是一个您(服务提供商)与您的客户之间的协议,以及本协议正式定义服务将交付的正常运行时间级别。云提供商亚马逊[4],谷歌[5]和Microsoft[6]将它们的sla设置为99.9%或更高。正常运行时间通常是用九来衡量。9越多越好。如表2-3所示9与预期的系统停机时间相关。

可用性每天停机时间每年停机时间
99%14.40分钟3.65日
99.9%1.44分钟8.77小时
99.99%8.64秒52.60分钟
99.999%864毫秒5.62分钟
99.9999%86.4毫秒31.56秒
示例:估计Twitter QPS和存储需求请注意,以下数字仅用于此练习,
因为它们不是实数从Twitter。
假设:3亿月活跃用户。
• 50%的用户每天使用Twitter。
• 用户平均每天发布2条tweet。
• 10%的推文包含媒体内容。
• 数据存储5年。
估计:
每秒查询(QPS)估计:
• 日活跃用户(DAU) = 3亿* 50% = 1.5亿
• 推文QPS = 1.5亿* 2条推文/ 24小时/ 3600= ~3500
• Peek QPS = 2 * QPS = ~7000
这里我们只估算媒体存储空间。
• 平均tweet大小:
• tweet_id 64字节
• 文本140字节
• 媒体1mb
• 媒体存储:1.5亿* 2 * 10% * 1mb = 30tb /天
• 5年介质存储:30tb * 365 * 5 = ~ 55pb

提示 Tips

粗略估计是关于过程的。解决问题更重要比取得成果更重要。面试官可能会测试你解决问题的能力。
这里有以下是一些建议:

  • 舍入和近似。做复杂的数学运算很困难在面试中。例如,“99987 / 9.1”的结果是什么?没有必要花宝贵的时间解决复杂的数学问题。精度不被期望。使用对你有利的四舍五入和近似值。除法问题可以是简化为:“100,000 / 10”。
  • 写下你的假设。把你的假设写下来是个好主意后引用。
  • 标注你的单位。当你写下“5”时,它的意思是5 KB还是5 MB?你可能会把自己弄糊涂。写下单元,因为“5mb”有助于删除歧义。
  • 常用的粗略估计:QPS、峰值QPS、存储、缓存、服务器数量等。你可以在准备考试时练习这些计算方法面试。熟能生巧。
    恭喜你走了这么远!现在给自己点鼓励吧。好工作!

参考资料
[1] J. Dean.Google Pro Tip: Use Back-Of-The-Envelope-Calculations To Choose The Best
Design:
http://highscalability.com/blog/2011/1/26/google-pro-tip-use-back-of-the-envelope-calculations-to-choo.html
[2] System design primer: https://github.com/donnemartin/system-design-primer
[3] Latency Numbers Every Programmer Should Know:
https://colin-scott.github.io/personal_website/research/interactive_latency.html
[4] Amazon Compute Service Level Agreement:
https://aws.amazon.com/compute/sla/
[5] Compute Engine Service Level Agreement (SLA):
https://cloud.google.com/compute/sla
[6] SLA summary for Azure services: https://azure.microsoft.com/en-us/support/legal/sla/summary

http://www.yidumall.com/news/72274.html

相关文章:

  • 网站制作器搜收录批量查询
  • 大良营销网站建设信息谷歌广告联盟
  • 数字币网站开发网站流量排名
  • 营销网站开发规划搜索网站有哪些
  • 毕业设计做网站 答辩会问什么问题google推广有效果吗
  • 菏泽郓城网站建设现在的seo1发布页在哪里
  • 学校网站建设问卷调查表在线网页制作系统搭建
  • 网站建设评价国内免费ip地址
  • 建设银行u盾不能弹出银行网站a5站长网网站交易
  • 市政道路毕业设计代做网站房地产最新消息
  • 徐汇网站制作购物网站如何推广
  • 通过域名访问网站郑州网络seo公司
  • 团购网站及域名长沙seo就选智优营家
  • 合肥公司建设网站首页海口网站关键词优化
  • 黄骅市网站建设行业关键词词库
  • 建网站设搜索引擎和浏览器
  • 学做电商网站开发网站多少钱
  • 温州做网站哪个好高端营销型网站建设
  • 青海学会网站建设公司站长统计app软件大全
  • 玉溪定制网站建设爱站工具下载
  • 网页制作论文范例seo优化软件购买
  • 网页设计与网站建设作品seo搜狗
  • 手机网页无法打开是什么原因seo快速排名优化公司
  • 常见的网络营销推广方式有哪些站长工具seo综合查询工具
  • 成都 企业 网站制作中国500强最新排名
  • 网站建设的成本与费用有哪些少女长尾关键词挖掘
  • 徐州网站开发公司台州seo排名扣费
  • 网站推广计划至少应包括搜索到的相关信息
  • 网站的建设要多少钱网站建设服务公司
  • 烟台网站制作这武汉抖音seo搜索