一天十万秒

来源:互联网 发布:mysql sql mode 编辑:程序博客网 时间:2024/05/17 05:12

一天十万秒

原文:There are 100,000 Seconds in a Day | Robust Perception

Brian Brazil August 23, 2015

刚启动服务器,并不是找到预测负载的最佳时机,或者服务器运行后,成本比你想的要高很多。通过评估系统的运行参数,你可以有信心的让系统将按照预期的方式工作。

在构建产品时,常常会担心解决方案不能伸缩,你会添加一个缓存、数据库、分片或者更贵的机器?

这些都需要付出代价。如果事后在来看,不需要新增组件,或者新增的组件不够而导致停机。这导致消耗了时间和金钱,而本来可以更富有成效地使用这些资源。

如何避免这种情况?在做出设计决策时,养成快速估算的习惯。在一分钟的时间内得到一个粗略的想法,这个想法不一定是完美的。在最糟糕的情况下,圆的慷慨向坏的情况下,一天有100000(60 * 60 * 24 = 86400)秒,磁盘寻道需要10ms,对S3进行一百万次读请求售价1美元。

估计有三种可能的结果:

  1. 设计在规定的范围内。
  2. 设计超出了界限。
  3. 还不清楚设计是否在界限之内,需要更精确的分析。

如果是第一个,那么你可以继续自信地设计。如果超出了界限,那么你就不会浪费时间在这个想法上,并且可以选择其他方案。如果还不清楚,那么你需要花几分钟时间做一个更精确的估计。

举个例子。你想让一百台机器每秒钟读取一次数据。如果是读取S3按100k/s来算,100台 = 10m,一天 = 每天100美元或每年$36k。这就太贵了。可以添加一个缓存,但是有没有更简单的方法呢?以寻道时间10ms为例,一秒可以处理100次请求,所以一个硬盘就满足的需求!

这种方法可以节省时间和金钱。作为一个额外的好处,因为这成为设计过程的一个组成部分,你会发现,自己经常第一次就会选择一个适当的解决方案。

原创粉丝点击