我正在为 Tomcat 服务器设置 HTTP 负载均衡器。我正在查看一些将运行负载均衡器的不同 VPS 计划。我假设负载均衡器将使用非常少的流量?如果一个网站每月的访问量约为 400 万次,我预计负载均衡器将使用多少带宽?
答案1
取决于请求的大小、是否使用直接服务器返回以及其他十几个变量。
自己进行容量规划。观察实际流量,了解请求大小,并将其乘以估计的请求数量。如果超出提供商的限制或预算,请制定升级容量或更换提供商的程序。
答案2
实际上负载均衡器可能会消耗系统中的大部分流量。
答案3
就像其他人提到的那样。视情况而定。既然您特别提到了 HTTP 负载平衡,那么负载平衡器将为这 400 万次访问提供 100% 的服务。
400 万次访问需要多少带宽?您需要根据自己的代码自行衡量。但让我们尝试进行一些粗略的计算:
什么是访问?是“点击”还是“唯一访问”?
如果成功了就简单了,我们只要用 400 万这个数字作为请求数就行了。
如果这是一次独特的访问,那么我的做法是利用平均体验来完成网站的主要任务(例如预订 Airbnb 的房间、预订 Uber 的车程等)。假设用户进入登录页面 -> 搜索结果 -> 浏览几页 -> 选择商品 -> 预订商品——一共有 5 页。因此请求数量为 400 万 * 5 = 2000 万个请求。
现在你需要估计一下每个页面有多大。我处理的大多数项目平均每页大约 1MB,所以我们就按照这个来吧。假设平均页面大小为 1MB(包括所有 ajax 请求、图像等),估计的传出带宽为:
1MB * 20 million = 20 Terabytes per month
这是一个非常非常繁忙的网站。这几乎相当于 Google 的搜索带宽使用量每年预计在 2009 年左右(约 24TB/年)。
好的。假设 400 万是“点击量”:
1MB * 4 million = 4 Terabytes per month
仍然是一个值得尊敬的网络服务。我不知道……可能和 Twitter 的规模差不多?
假设您的服务更像 Twitter,您主要发送小数据包。假设平均每个请求约 4k:
4kB * 4 million = 16 Gigabytes per month
现在它开始看上去合理了。
我希望您能大致了解如何估计这些事情,但只有在您的服务启动并运行后您才真正知道答案。