首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mongodb architect设计与硬件规范

mongodb architect设计与硬件规范
EN

Stack Overflow用户
提问于 2015-10-21 20:27:26
回答 1查看 23关注 0票数 0

目前我们有一个由3个成员组成的副本集,25 GB的数据,正常的cpu使用率在两个次要实例中都是1.5,在主要实例中是0.5 (仅在次要实例中发生读取),通常有1200个用户访问我们的网站。现在我们已经计划增加我们网站的点击率。我们期望大约5000并发用户到我们的网站,你能建议没有实例需要添加到我的副本集中。

副本集中的当前基础架构:

代码语言:javascript
复制
1. Primary instance
CPUs: 16
RAM: 32 GB
HDD: 100 GB

2. Secondary instance
CPUs: 8
RAM: 16 GB
HDD: 100 GB

3. Secondary instance
CPUs: 8
RAM: 16 GB
HDD: 100 GB
EN

回答 1

Stack Overflow用户

发布于 2015-10-21 20:45:33

假设您的应用程序随用户数量线性扩展,CPU容量应该不是问题(不是吗?只有你知道--我们不知道你的应用程序是做什么的)。

问题是:您希望您的数据增长多少?当你当前有25 GB的数据和16 GB的ram时,64%的数据可以放入RAM中。这可能意味着许多查询可以直接从RAM缓存获得服务,而不需要访问硬盘。这些查询通常非常快。但是,当工作集的大小进一步超过RAM的大小时,在访问现在需要从硬盘读取的数据时,您可能会遇到一些延迟的增加(不过,这取决于:当您的应用程序主要与最新的数据交互,而很少与较旧的数据交互时,您可能甚至不会注意到太大的差异)。

解决这个问题的方法很明显:获取更多的RAM。如果这不是一个选项(例如,因为服务器达到了硬件允许的最大内存容量),那么您的下一个选项是构建一个sharded cluster,其中每个分片负责为您的数据间隔提供服务。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33259318

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档