Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用ServiceStack.Redis客户端版本4.0.44从远程服务器访问Redis哨兵时获得“ServiceStack.Redis”

使用ServiceStack.Redis客户端版本4.0.44从远程服务器访问Redis哨兵时获得“ServiceStack.Redis”
EN

Stack Overflow用户
提问于 2015-10-09 06:02:16
回答 1查看 1.4K关注 0票数 4

我们有一个带有两个redis服务器的redis配置。我们还有3个哨兵来监视这两个实例,并在需要时启动故障转移。

我们从一些应用程序中断断续续地得到了以下问题:

ServiceStack.Redis.RedisException: No Redis Sentinels were available ---> ServiceStack.Redis.RedisException: Unable to Connect: sPort: 0

Unable to Connect: sPort: 0部分可能表示它是一个ConnectTimeout问题(按照这个问题:ServiceStack.Redis:无法连接: sPort: 0)。然而,我不太相信这就是问题所在,因为上面写着“没有红色哨兵可用”。

虽然我们在一些应用程序上断断续续地遇到了这个问题,但有些应用程序(例如,我们编写的一些控制台应用程序)似乎一直在解决这个问题。

谁能弄清楚这个问题是怎样解决的呢?如果您在谷歌上搜索“ServiceStack.Redis是可用的”,那么您只会得到ServiceStack.Redis GitHub页面,该页面具有输出此消息的实际代码。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-12 12:05:31

当试图连接到一个可用的哨兵时,抛出错误消息。在RedisSentinel工作人员之后超过RedisSentinel.MaxFailures (缺省值: 5)持续错误。

Redis客户端需要能够连接到一个可用的哨兵,以发现可用的主程序和从站,并在主程序不再响应和失败时得到通知。

您可以增加RedisSentinel.MaxFailures计数,让它继续循环并连接到可用的Redis。我还使用增加了一个提交来重置故障计数,当它能够连接到有效的哨兵时(因此只有连续的错误才会针对MaxFailures进行检查),此更改可从v4.0.47即现在的可在MyGet上获得中获得。

Redis Client Stats的打印快照

要更好地了解Redis连接的健康情况,可以转储内部Redis统计的快照,以显示客户端连接的活动和健康状况:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RedisStats.ToDictionary().PrintDump();

启用调试日志记录

您可以启用调试日志记录,以便在首选日志提供程序中查看更多错误详细信息:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
LogManager.LogFactory = new ConsoleLogFactory(debugEnabled:true);

但是,这也会发出Redis命令,因为这些命令可能过于冗长,所以可以使用以下方法进行抑制:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RedisConfig.DisableVerboseLogging = true;

句柄错误回调

此外,RedisSentinel还提供了许多钩子来处理自定义事件,例如,当哨兵工作人员通过分配OnWorkerError委托无法连接时,您可以处理这些事件,例如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var sentinel = new RedisSentinel(sentinelHost, masterName)
{
    OnWorkerError = ex =>
    {
        "Worker error: {0}".Print(ex);
    },
};
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33040280

复制
相关文章
ServiceStack.Redis 使用教程
环境准备 Redis (使用Windows版本做测试,运营环境建议使用Linux版本) ServiceStack.Redis-v3.00 在Windows上运行Redis服务器作开发和测试是很好的,但
张善友
2018/01/19
1.5K0
ServiceStack.Redis 使用教程
Redis客户端ServiceStack.Redis的简单使用
在nuget中下载ServiceStack.Redis,但是运行之后会出现一个问题:
Ryan_OVO
2023/10/18
4980
Redis从入门到精通(二)C#中使用redis及封装Redis工具类
上一篇讲述了安装redis《Redis总结(一)Redis安装》,同时也大致介绍了redis的优势和应用场景。本篇着重讲解.NET中如何使用redis和C#。
架构师精进
2020/05/24
10.1K0
全网最完整的Redis入门指导
本文提供全网最完整的Redis入门指导教程,下面我们从下载Redis安装包开始,一步一步的学习使用。
Kiba518
2020/06/16
9050
CSReid库在NetCore工作场景中的使用
过去 .net 最有名望的 ServiceStack.Redis 早已沦为商业用途,在 .NETCore 中使用只能充值。后来居上的 StackExchange.Redis 虽然能用,但是之前出现的各种Timeout错误也是让人很无语,所以也不作为使用的首选。经过网上的一些整理和推荐,发现了一款开源库CSReidsCore。
happlyfox
2021/04/30
2K0
Visual Studio+JavaScript 的前后端调试方法你真的会了么?
对于.NET 的后端工程师来说,Visual Studio 是一款必须要掌握的 IDE。对于前端工程师来说,Javascript 是前端开发过程中必不可少的使用语言。但是,对于很多刚入门的程序员,或者已经入坑几年的所谓的有经验的程序员仍然在开发过程中,因为不知道、或者了解较少的调试技巧,调试方法,导致无法在项目开发过程中快速有效的开发, 或者无法在使用第三方框架的情况下,很好的阅读源码,导致没有办法很好的理解对应的实现过程,所以本 Chat 总结相关的调试技巧和学习方法。
问问计算机
2021/05/08
1.7K0
Visual Studio+JavaScript 的前后端调试方法你真的会了么?
.Net Core下 Redis的String Hash List Set和Sorted Set的例子
1.新建一个.Net Core控制台应用程序,用Nuget导入驱动 打开程序包管理控制台, 执行以下代码。 PM> Install-Package ServiceStack.Redis 即可添
码农阿宇
2018/04/18
1.2K0
.Net Core下 Redis的String  Hash List Set和Sorted Set的例子
NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介
  首先,不得不说Redis官方提供了众多的API开发包,但是目前Redis官方版本不支持.Net直接进行连接,需要使用一些第三方的开源类库。目前最流行的就是ServiceStack.Redis这个开源项目,其在GitHub上的下载地址为:https://github.com/ServiceStack/ServiceStack.Redis
Edison Zhou
2018/08/20
4030
NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介
ASP.NET Core微服务(六)——【redis操作】
Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。
红目香薰
2022/11/28
6370
使用ServiceStack构建Web服务
提到构建WebService服务,大家肯定第一个想到的是使用WCF,因为简单快捷嘛。首先要说明的是,本人对WCF不太了解,但是想快速建立一个WebService,于是看到了MSDN上的这一篇文章 Building Cross-Platform Web Services with ServiceStack,所以这里简要介绍一下如何使用ServiceStack快速建立一个WebService服务。 当然,在开始之前,首先要说明一下ServiceStack是个什么东西。 在国内用ServiceStack的似乎很少
庞小明
2018/03/07
1.7K0
使用ServiceStack构建Web服务
.net core 使用Redis的发布订阅
Redis是一个性能非常强劲的内存数据库,它一般是作为缓存来使用,但是他不仅仅可以用来作为缓存,比如著名的分布式框架dubbo就可以用Redis来做服务注册中心。接下来介绍一下.net core 使用Redis的发布/订阅功能。 Redis 发布订阅 Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。 Redis 客户端可以订阅任意数量的通道。 下图展示了频道 channel1 , 以及订阅这个频道的三个客户端 —— client2 、 clie
晓晨
2018/06/22
1.4K0
c#实现redis客户端(一)
  最近项目使用中要改造redis客户端,看了下文档,总结分享一下。 阅读目录: 协议规范 基础通信 状态命令 set、get命令 管道、事务 总结 协议规范 redis允许客户端以TCP方式连接,默认6379端口。传输数据都以\r\n结尾。 请求格式 *<number of arguments>\r\n$<number of bytes of argument 1>\r\n<argument data>\r\n 例:*1\r\n$4\r\nINFO\r\n 响应格式 1:简单字符串,非二进制安全字符串,一
蘑菇先生
2018/05/21
1.7K0
Redis事务
和其它数据库一样,Redis作为NoSQL数据库也同样提供了事务机制。在Redis中,MULIT,EXEC,DISCARD,WATCH这个四个命令是实现事务的基石,Redis中事务的实现特征
莫问今朝
2018/08/31
7280
Redis事务
C#进行Redis操作
由于一些程序是用.net来写的,刚好要访问以前的redis库,于是就找一些redis的.net客户端。
sparkexpert
2022/05/07
3600
C#进行Redis操作
Redis远程连接Redis客户端
设置防火墙规则:firewall-cmd –zone=public –add-port=6379/tcp –permanent
全栈程序员站长
2022/08/18
2.9K0
Redis远程连接Redis客户端
在Windows上以服务方式运行 MSOPenTech/Redis
ServiceStack.Redis 使用教程里提到Redis最好还是部署到Linux下去,Windows只是用来做开发环境,现在这个命题发生改变了,在Windows上也可以部署生产环境的Redis,这都要感谢微软的开放,把Redis在Windows上的环境给我们搞定了,最新的版本已经支持64位了。那么Redis在32位上的存储能力受限于可用的地址空间,也就是3GB。 要在Windows上运行64位Redis ,可以从https://github.com/MSOpenTech/redis 获取一份Redis
张善友
2018/01/29
1.4K0
在Windows上以服务方式运行 MSOPenTech/Redis
Redis分布式锁服务(八)
概述 在多线程环境下,通常会使用锁来保证有且只有一个线程来操作共享资源。比如: object obj = new object(); lock (obj) { //操作共享资源 } 利用操作系统提供的锁机制,可以确保多线程或多进程下的并发唯一操作。但如果在多机环境下就不能满足了,当A,B两台机器同时操作C机器的共享资源时,就需要第三方的锁机制来保证在分布式环境下的资源协调,也称分布式锁。 Redis有三个最基本属性来保证分布式锁的有效实现: 安全性: 互斥,在任何时候,只有一个客户端能持有锁。 活跃性
蘑菇先生
2018/05/21
8000
【Redis】Redis 哨兵
如果master宕机了,哨兵会找一个slave作为master,通知其他所有的slave连接新的master,启动新的master与slave,进行数据同步(全量复制*N+部分复制 *N)
终有救赎
2023/10/24
3920
【Redis】Redis 哨兵
Redis-19Redis哨兵Sentinel模式-Centos6.5上3台主机1主2从3哨兵的配置及通过代码访问哨兵
Redis主从模式当主服务器右机后,需要手动把一台从服务器切换为主从服务器,这就需要人工干预,既费时费力,会造成一段时间内服务不可用,不推荐使用。 可以使用哨兵模式或者集群模式。 这里我们来探讨哨兵模式。
小小工匠
2021/08/17
5090
在Window系统中使用Redis缓存策略
Redis是一个用的比较广泛的Key/Value的内存数据库,新浪微博、Github、StackOverflow 等大型应用中都用其作为缓存,Redis的官网为http://redis.io/。
用户1055830
2019/05/25
8180

相似问题

ServiceStack.Redis认证Redis哨兵+ Redis

13

ServiceStack.Redis:没有红宝石哨兵

10

ServiceStack.Redis哨兵简单设置,“不提供Redis哨兵”

10

ServiceStack.Redis -在哨兵模式下支持分片吗?

10

替代servicestack.redis

40
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文