当前位置: 首页 > 知识库问答 >
问题:

从Mongodb辅助服务器读取/性能

易瀚漠
2023-03-14

我正在使用MongoDB构建一个架构。

我发现在辅助服务器上发送读取请求以满足统计需求是可能的(也是最佳实践)。结果将是一个更好的表现。

谢谢你的帮助。

共有1个答案

微生宝
2023-03-14

Pierre,复制集的整个概念是关于故障转移的--它不是为了更好的性能而分散负载。尽管您可以像通常所建议的那样对辅助服务器执行读操作,但您必须考虑在服务器故障期间,如果您没有单独的服务器,并且所有的写和读操作都转到同一台服务器上,将会发生什么--此时您是否会发现主服务器的配置不足?您认为辅助服务器与主服务器的工作量相同,并且去辅助服务器读取并不是更有效的,这是正确的--但是如果您有多个辅助服务器,您可以将读取分散到它们之间--因此每个服务器响应的读取更少。但是,我最初的声明仍然有效--如果其中一个服务器发生故障,您的系统是否能够处理负载。

 类似资料:
  • 从蓝牙android API获取android辅助蓝牙gatt服务。 下面是我们获取ble服务的代码: 甚至尝试以独占方式获取辅助服务,但它返回空对象: 有人可以指出任何指针如何在Android中搜索辅助服务。

  • 我在生产环境中使用redis server,在HA中使用redis Sentinel。但是阅读文档,当客户机连接到sentinel时,sentinel将主redis服务器提供给客户机。 是所有的读写操作都在主服务器上进行,而从服务器只用于故障转移,还是我们可以使用从服务器读取数据?

  • 根据关于数据复制的官方文档,对主节点的所有更改都写入操作日志(即oplog)中,辅助服务器复制这些更改。我在官方文档或任何其他来源中都找不到,当主要的oplog发生更改时,谁负责沟通。 主服务器是否让辅助服务器知道在Oplog上有新的操作,然后它们去取它,或者辅助服务器不时地检查Oplog?或者这是创建副本集时的配置?

  • 我正在从sftp服务器读取文件,并使用Spring Batch Framework将该文件加载到数据库中。下面是我的代码,但我遇到了一个错误 代码: 错误:

  • 我们得到了一个mongodb副本集,它有三个节点(比如a、B、C)。当a和B关闭时,mongo将节点C设置为只读(这很好!) 我们的要求是,当只有只读待机节点可用时(没有主节点),应用程序仍应继续在只读模式下工作。 如果我使用java MongoClient库与mongo客户端连接操作?ReadPreference=SecondaryPreference,客户端程序能够连接到mongo并从只读的次

  • 我目前在spring boot 2.3中有以下实现。但当我将其迁移到spring boot 2.4时。未从配置服务器读取属性。 密码 bootstrap.yml 应用yml公司 application.yml配置服务器 这个实现在spring boot 2.3中运行良好。但是在升级到spring boot 2.4之后,在启动时出现了以下错误。