草庐IT

ROS_MASTER_URI

全部标签

Redis Sentinel master 没有立即降级为 slave

我的架构包含三个Redis实例(一个主实例和两个从实例)和三个Sentinel实例。在它的前面有一个HaProxy。一切正常,直到主Redis实例出现故障。新的master由Sentinel正确选择。但是,旧的master(现已关闭)并未重新配置为slave。结果,当那个实例再次启动时,我在短时间内(大约11秒)有两个主人。在那之后,被提出的那个实例被适本地降级为奴隶。它不应该这样工作吗,当master宕机时,它会立即降级为slave吗?这样一来,再起来的时候,马上就是slave了。我知道(自Redis2.8起?)有CONFIGREWRITE功能,因此当Redis实例关闭时无法修改配置

redis - redis中如何保证master和slave之间的数据一致性

我制作了一个程序,可以根据某些规则将数字转换为一些序列号,并检查是否使用了序列号。我使用redis来做检查工作。首先,获取slave中的num1。当result不为nil时,表示序列号已被使用,返回'used'。其次,如果结果为nil,则在master中设置num1并返回“new”(一旦返回,nums表示“used”)问题是master在完成与slave的同步过程之前会崩溃,所以这个数字可能不在slave中。此时在slave中获取num1,它返回'new',但是使用了num1。redis中如何保证master和slave的数据一致性? 最佳答案

ruby-on-rails - URI::InvalidURIError: 错误的 URI(不是 URI?):heroku redis 错误

我正在尝试将我的Rails应用程序推送到heroku上,我正在使用herokuRedisToGo附加组件我经历过这个tutorial并完成了那里提到的所有步骤。但是在推送heroku时出现此错误:remote:rakeaborted!remote:URI::InvalidURIError:badURI(isnotURI?):在查看我的heroku日志时,我发现了这个:2017-07-13T10:06:32.602356+00:00app[web.1]:[4]*Minthreads:5,maxthreads:52017-07-13T10:06:32.602356+00:00app[web

linux - 如何将 Redis master 同步到另一个独立的 Redis 实例?

我有一个主/从环境,我想(每天)与另一个独立的Redis实例同步。我知道我可以转储数据,将其传输到其他服务器而不是导入数据。有没有办法将数据从Redis流式传输到Redis? 最佳答案 您可以让您的实例成为您想要同步的Redis的从属。你不需要配置master。只需使用SLAVEOFhostport命令即可使您的实例成为您要同步的Redis的从站。同步完成后,使用SLAVEOFNOONE命令停止复制。 关于linux-如何将Redismaster同步到另一个独立的Redis实例?,我们在

redis - Redis复制中的master_replid2是什么意思?

我的系统上有1个Redis复制。上一次master_replid2是00000000000但几天后它现在是c673350b6868f3661bd1231ad1b5389310d0a201。我不知道为什么,我试图通过谷歌搜索但没有更多关于它的信息。谁能告诉我这是什么意思?我看了看这个网站,但运气不好:https://redis.io/commands/info请指教。提前致谢。 最佳答案 NotethattherearetwopotentiallyvalidreplicationIDs:theID1*andtheID2.TheID2h

docker - redis master 看不到 slave

我的redissentinel设置有问题,它有4个节点(1个主节点,3个从节点)。我已经修补了第一个从节点(docker版本从17.03.1-ce更改为17.12.0-ce)。我的问题是master不再将slavenode1带到成员池中。Slave(node1)info(Itrecognizedmasternode):$dockerexec-itredis-sentinelredis-cliinforeplication#Replicationrole:slavemaster_host:master_port:6379master_link_status:down主要信息:$docke

python - 我正在使用 Redis 来替换 ROS,这很奇怪吗?

我正在使用Redis在两个Python程序之间交换数据。详细方式如下。我有两个python文件,cam.py和process.py。cam.py从摄像头读取图片并存储到Redis,process.py从Redis读取图片并处理。cam.py:"""ThisfilereadthecameraandsaveimagesintoRedis"""importcv2importredis,structdefimToRedis(r,a,n):"""StoregivenNumpyarray'a'inRedisunderkey'n'"""h,w=a.shape[:2]shape=struct.pack

redis - 从slave恢复redis数据到master

我需要不丢失redis上的任何数据并且它有很高的写入请求,所以我不能使用AOF持久化。RDB可以提供帮助,但可能会丢失上次备份的一些数据。现在我认为复制是备份,所以当主服务器崩溃、重启或其他任何事情时,我已经同步了从服务器中的数据并可以再次恢复它。现在有没有办法在崩溃时自动设置master为slave,slave为master,然后同步? 最佳答案 当您的应用程序知道MASTER已关闭时,应用程序应在SLAVE上发出以下命令:SLAVEOFNOONE上述命令将使SLAVE成为MASTER,您的应用程序现在可以继续将其用作MASTER

redis - 如何在sentinel配置中切换redis master

我有一个redis哨兵配置,其中有一个主站、两个从站和3个哨兵正在运行。我注意到,在某些时候,哨兵可能会切换主人,选择其中一个奴隶作为主人。这导致作为独立客户端连接到主节点的应用程序出现问题(我正在努力更改代码以使用哨兵)。我想知道是否可以通过连接到哨兵客户端来切换主服务器,即通过“redis-cli”有人可以告诉我是否有可以用来切换主IP的命令吗? 最佳答案 客户端应用程序应该使用支持sentinel的客户端库,以防redismaster宕机并且sentinel选择新的master。如果您的客户端应用程序没有利用它,不确定设置哨兵

ruby-on-rails - Ruby & Redis/Skidekiq URI::InvalidURIError:方案 redis 不接受注册表部分:bsc_redis:6379(或错误的主机名?)

在我的docker服务器上,sidekiq/redisURLURLsepcification出现错误:Sidekiq.configure_clientdo|config|config.redis={url:"redis://bsc_redis:6379",size:1}end我明白了URI::InvalidURIError:theschemeredisdoesnotacceptregistrypart:bsc_redis:6379(orbadhostname?)from/usr/local/lib/ruby/2.0.0/uri/generic.rb:214:ininitialize'f