我对所有“云”都是陌生的。
我将开发一个网站/平台,在生产的第一年之后,预计每月访问者将达到 15,000,000 人左右。
我假设该站点每个访问者将有 5 次页面浏览量,并且每页有 100kb 的数据传输量。
我联系了几家云托管公司,但他们告诉我,我需要有“硬件要求”。
由于我对IT的东西一无所知,我想知道:
需要分析哪些因素才能确定
- 需要多少台服务器
- 需要 VPU/服务器
- 需要内存/服务器
- 所需的总存储/服务器
提前非常感谢!
我对所有“云”都是陌生的。
我将开发一个网站/平台,在生产的第一年之后,预计每月访问者将达到 15,000,000 人左右。
我假设该站点每个访问者将有 5 次页面浏览量,并且每页有 100kb 的数据传输量。
我联系了几家云托管公司,但他们告诉我,我需要有“硬件要求”。
由于我对IT的东西一无所知,我想知道:
需要分析哪些因素才能确定
提前非常感谢!
我不同意另一个答案,因为它几乎完全是猜测,你可以自己生成任何东西。
唯一确定的方法是获取一些硬件,将您的应用程序粘贴在上面并运行一些负载测试,看看您是否可以达到您想要明智地进行流量的点,并且在服务器上有一定数量的免费开销。只有这样,你才会知道你需要什么。没有其他人可以回答这个问题,因为每个应用程序都是不同的。这是您的应用程序,只有您可以测试它。
给出的数据对确定您想要的数字没有多大帮助。但是根据我的经验,我会尽力帮助您进行分析。
每月 15,000,000 次访问意味着每天 700,000 次访问(假设大约 30-35% 的访问来自重复访问者)。
每天 700Kx5=350 万页面浏览量。假设活动期为 14 小时,这对于单个 timezeone 站点是典型的。它的 70 请求/秒。
有了这么大的用户群,你肯定需要一个高性能的数据库服务器,只有一个从服务器。这些数据库服务器的配置
- 内存,以便整个活动数据 + 索引适合内存(不应发生交换/颠簸)。这需要根据您将为用户存储的内容和存储时间来计算。
- 使用一些可靠的存储,如 RAID10(更高的读/写带宽)。
- 取足够的存储空间,看看它的弹性是否足够。(如 AWS EBS)。
使前端应用服务器轻量级和水平可扩展。将它们放在负载均衡器后面(使用 nginx 或 HAproxy 等软件负载均衡器)。你应该能够尽可能多地达到你的目标。
对于loadbalacer and frontend take 4CPU, 4-8GB RAM servers
. 每个前端可以花费多少需要使用负载测试方法和真实的测试数据进行测试。
使用内存/+持久缓存(如 memcached/membase/redis 等)减少数据库/持久性的负载。使用 8GB 的服务器并根据需要添加更多。
我还没有讨论过数据库分区。只有当你觉得有必要时才这样做。开始时不要过度投资。
每月有 1500 万用户,这个设置应该足够了,but again it all depends on you 1. memory footprint, 2. amount of active data
我尽量回答。对您不同意或想讨论更多的观点发表评论。