我们在AWS上运行的stream量很高(每天10万次)Drupal新闻网站。 它在cloudflare&2 Load Balanced Varnish服务器后面。 由于某些原因,RDS的带宽使用率非常高。 这是将Elastic Cache中的caching表中的所有caching表托pipe在内存caching中之后。 100%的stream量是匿名的。 除了新的或更新的内容,stream量从清漆供应。
但RDS带宽仍然很高。 比如到本月18号,使用量已经是15TB +。 这个成本正在杀死整个网站。
我们怎样才能检测到什么是吃东西的所有带宽? 我们如何去找出根本原因?
查看我们的结算页面上的详细信息:
Bandwidth $0.000 per GB - data transfer in per month - 4.808 GB - $0.00 $0.000 per GB - first 1 GB of data transferred out per month - 1 GB - $0.00 $0.010 per GB - regional data transfer - in/out/between EC2 AZs or using IPs or ELB - 15,147.744 GB - $151.48 $0.120 per GB - up to 10 TB / month data transfer out - 20.759 GB - $2.49 Total: $153.97 Region Total: $154.04
您应该始终使用私有 IP地址在各种基础架构组件(RDS,ElastiCache等)之间进行通信。 如果您使用公共 IP地址,则您将收取地区数据传输费用,因为stream量会离开并重新进入AWS。
仔细检查您的应用程序是否使用公共IP地址不正确地访问后端组件。
“区域数据传输 – 进出/在EC2之间或使用IP或ELB”帐户进行数据传输:
如果“ 区域数据传输 – input/输出/ EC2 AZ之间或使用IP或ELB ”的成本是151.48美元,那么这意味着这3个数据传输的总数是15.148 TB。
因此,在同一个可用区域上传输EC2上的数据时,请始终使用专用IP地址。 这可能是你的问题。
如果你想摆脱这个代价,你应该在同一个可用区域使用所有的EC2实例 ,但我不推荐。 如果选定的可用性区域发生问题,您的服务可能会脱机。
您可以使用AWS账单和成本pipe理报告来了解哪些是最大的贡献者,只需将标签添加到您的实例以及AWS账单和成本pipe理控制台中, 在S3存储桶上创build报告。