问题标签 [master-slave]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
677 浏览

mysql - 主从复制;分读策略

我们接近要求在我们的 MySQL 数据库上进行复制,我正在寻找有关最佳策略的一些说明。希望这仍然是一个足够具体的问题,可以在这里提出。

我们目前有 1 个 DB 用于我们的应用程序,这是相当读取密集型的。我正在考虑从一个简单的主从设置开始,根据应用程序中的一些基本负载平衡逻辑,读取将被分成大约 40% 的主设备和 60% 的从设备。

我已经说过 40-60 的拆分,因为我知道偶尔会有一些读取需要很长时间才能执行,可能需要一分钟或更长时间。我不打算对这些读取进行负载平衡,而是计划始终将它们定向到主服务器。我宁愿让主服务器完成工作并给从服务器时间赶上,而不是可能在更简单的查询上引入复制滞后。(当我们可以推进到多个从属服务器时,我们将有一个专用于这些密集查询)。

所以我想我的问题是——这听起来像一个理智的计划吗,或者如果不是,还有什么更好的选择?


编辑以回应以下评论:

@Romain - 应用程序的很大一部分涉及登录用户发布、评论和回复,因此对于这些操作,需要尽可能避免陈旧数据。

@Jaydee - 是的,我为每台服务器建立了一个权重值,因此我可以在需要时轻松更改读取百分比。

0 投票
1 回答
520 浏览

ruby-on-rails - 考虑到副本延迟的主从复制

我正在生产中的 Ruby on rails 应用程序。

此应用程序需要主/从数据库复制。

我正在使用章鱼宝石来做到这一点。

问题是我有一个在过去一周左右工作的登台环境,在那个登台环境中,我在亚马逊 RDS 上设置了警报。

我看到副本延迟有时是 10 秒(有时甚至是 100 秒)。

你会如何在你的应用程序中处理这个问题,认为我有几个实例正在运行,都在负载均衡器下,而且我还有后台作业正在运行(使用 Resque)?

0 投票
1 回答
849 浏览

c++ - 获取一个主程序在一个新线程中启动一个从属程序

我正在使用popen从主程序启动 C++ 从程序。然而,通过这样做,控制不会返回到主程序,直到从属程序完成其任务。

如何在单独的会话(或单独的线程)中启动从属,以便在将控制权传递回主控之前,不会强制主控等待它完成?

我希望主人能够启动奴隶然后完成,奴隶在主人退出后继续。

0 投票
6 回答
23664 浏览

mongodb - 将成员添加到 MongoDb 上的副本集

我正在尝试使用 MongoDb 创建一个副本集,服务器主机名是:

主机名 主机名-1 主机名-2

它们中的每一个都有其 /etc/hosts 文件中详细说明的所有相关主机名(它们都运行 Ubuntu 10.04 64 位)

当我在一个节点上执行 rs.initiate 时,一切似乎都开始良好。运行 rs.status(); 显示:

当我尝试向副本集添加新成员时,问题就来了。我使用命令 rs.add(hostname-1); 我收到以下错误:

我尝试了多种使用主机名、IP 地址的组合,无论有无端口号,但我总是遇到同样的问题。主机名正在解析,我尝试 ping hostname-1 并且它工作正常。

有人对可能导致此问题的原因有任何想法吗?

不幸的是,在 Mongo 文档中没有在现实世界场景中设置副本集的示例,仅在同一台机器上使用三个实例,这显然是无用的。

提前感谢您的帮助!

0 投票
2 回答
4528 浏览

cassandra - 主从与对等分布式计算

HBase 有一个主从模型,而 Cassandra 有一个点对点模型。我知道在主从模型中,主节点是 SPOF(单点故障),而对等模型中没有这样的东西。

每个模型还有其他优点和缺点吗?特别是我正在寻找主从比对等模型的任何优势。

0 投票
1 回答
877 浏览

amazon-ec2 - 可以将数据库从 Amazon 外部复制到 EC2 实例吗?

我正在寻找设置复制,它将在我的本地环境中拥有一个主服务器,在亚马逊环境中拥有一个从属服务器。

我能够为两个 EC2 实例成功设置复制,但如果主实例位于 Amazon 环境之外,则无法这样做。我更改了安全组以打开端口 3306,但这并没有改变任何东西。

是否还有其他需要做的改变?谁有类似的设置?这可能吗?

0 投票
1 回答
2747 浏览

postgresql - Postgresql:1表的主从复制

帮助我为两个 Postgresql 数据库之间的一个表的主从复制提供一个简单的(轻量级)解决方案。该表包含一个大对象。

0 投票
1 回答
694 浏览

redis - Redis master 比 Redis slave 运行了更多的命令

我们在 Redis 架构中获得了一个非常有趣的图表

redis 命令

  • 绿色:大师
  • 蓝色:奴隶

看起来主 Redis执行的命令比从 Redis多 35%

它并不总是相同的距离。

以下是活动 redis 服务器的部分日志:

同时在药膏上:

所以它们看起来几乎是 1:1 同步的。

我们想知道这可能是造成这种差距的原因。我们也在问自己,这是否意味着我们可以优化发送到 Redis 的不必要的命令。

0 投票
2 回答
8582 浏览

hudson - 詹金斯与多个奴隶使用同一台机器

目前我的 Jenkins 设置仅限于一个执行者。这几乎是我们构建的要求,因为我们有一个用户特定的日志文件,每次构建都会创建。为了获得多个执行者,我只是在本地机器上设置了从属。我希望我们所有的奴隶共享同一个工作空间,所以我只是创建了一个符号链接。话虽如此,我必须在工作区上 chmod 775 以便它更像是基于组的工作区。反正有多个詹金斯奴隶共享一个工作区吗?

编辑:关于我的 1 执行人限制。我们的应用程序是一个动作脚本应用程序,我们在构建过程中运行了许多单元测试,并创建了一个闪存日志。我们希望能够为每个构建提供闪存日志。unix 上的 flash 日志存储在用户主目录中。从 10.1 版开始,您无法更改 mm.cfg 中的位置。由于 Jenkins 以用户身份运行,我们不能同时运行多个 flexunit 测试实例并且能够正确捕获闪存日志。

这是我遇到的一些烫发失败:

引起:hudson.plugins.git.GitException:命令“git fetch -t git@company:repo/repo.git +refs/heads/ :refs/remotes/origin/ ”返回状态码128:错误:添加权限不足存储库数据库 .git/objects 的对象

0 投票
1 回答
1975 浏览

mysql - 使用 Wamp Server mysql 进行主从复制的定时数据库复制

我正在尝试在我的 wamp 服务器上使用主从复制来复制我的数据库。我对 my.ini 文件进行了以下更改:

在主服务器上我配置了这个:

在从服务器上,我配置了这个:

我收到错误:错误 1198:无法使用正在运行的从机执行此操作;首先运行停止奴隶。

所以我跑了 stop slave 并没有发生任何事情。任何帮助,将不胜感激。