当前位置: 首页 > 面试题库 >

主服务器是否总是以最小的优先级重做实例?

景令秋
2023-03-14
问题内容

我正在使用哨兵运行主-从redis,当我杀死我的主时,优先级最低的从将成为新的主。

但是,当我再次启动具有较低优先级的旧主机时,它不会成为主机。

是否有此行为意图并在某处进行了记录?我似乎在redis前哨文档中找不到任何内容。


问题答案:

关于“故障转移行为。明确指出,优先级最低的从属服务器是首选的(除非它为零)-请参阅文档(“
从属优先级”部分)

关于“后备”行为。旧的主机重新联机后,将不会恢复其旧的主机状态。这是有意的,因为该想法是尽可能少地更改前哨ha群集的状态。下一次故障转移一旦发生,如果旧的主服务器(现在是从服务器)的优先级最低,它将被提升为主服务器。



 类似资料:
  • 问题内容: 在Linux实时进程优先级范围为1到99的情况下,我不清楚哪个是最高优先级,即1或99。 “了解Linux内核”(O’Reilly)的7.2.2节说1是最高优先级,考虑到正常进程的静态优先级从100到139,其中100是最高优先级,这是有道理的: “每个实时过程都与一个实时优先级相关联,该优先级的值范围是1(最高优先级)到99(最低优先级)。” 另一方面,sched_setschedu

  • 问题内容: 快速编写了一个Java proggy,以每个优先级生成10个线程,并使用BigDecimals分别计算500,000次pi(4 * atan(1)方法),在每个线程上加入并报告运行方法的经过时间。是的,可能不是最好的例子,但要保持基础。 我知道Bug4813310 用C语言完成这项工作并非易事,但是我们可以假设本机优先级从未在Linux JVM上设置吗? 看起来似乎并没有太大的偏差!那

  • 问题内容: Java垃圾收集器以优先级1运行,因此不能保证System.gc()如果被调用将实际执行。 有什么办法可以改变其优先级?如果需要,这将使我能够运行。 问题答案: 垃圾收集器是一个独立线程(如TomHawtin在评论中所提醒,甚至不一定是单个线程),并且其优先级由Java虚拟机确定。这意味着您不能强制垃圾回收。调用告诉运行时环境“现在”可能是运行GC的好时机,但实际上并不能保证立即进行垃

  • 我目前正在尝试实现min heap PQ,但是我在实现的正确性方面遇到了一些问题,我似乎无法找出我做错了什么——它没有输出最低优先级,也没有对它们进行正确排序。 使用以下测试数据: 我得到以下结果: 我希望结果是按升序排列的——起初我认为这可能是因为交换了错误的孩子,但最后一个输出是最大的优先级,所以这没有意义。我花了几个小时试图研究堆优先级队列,但我找不到任何帮助。 以下是CMP要求的更好的代码

  • 我正在编写一个最小优先级队列和一个最大优先级队列,如下所示: 输入数组的数字将一个接一个地添加到队列中。然而,当数组[12,4,5,3,8,7]是一个样本输入,打印优先队列的输出是: MIN:[3.0, 4.0, 5.0, 12.0, 8.0, 7.0]MAX:[12.0, 8.0, 7.0, 3.0, 4.0, 5.0] 我定义的比较器有什么问题吗?提前感谢你的帮助。

  • 在我的任务中,我一直在研究一个卫星导航系统,我使用邻接列表来存储所有的地图数据。 因此,我想为我的路径规划函数实现dijkstras算法,但我需要首先实现一个最小优先级队列。使用常规堆可以做到这一点吗,还是需要二进制堆?