Redis服务器重启后,服务堆栈Redis重新连接

 mobiledu2502858945 发布于 2023-02-10 23:03

我们使用Service Stack的RedisClient的BlockingDequeue来保存一些数据,直到它可以被处理.调用代码看起来像

 using (var client = ClientPool.GetClient())
            return client.As().Lists[_channel].BlockingDequeue(timeout);

如果重新启动托管Redis的服务器,则BlockingDequeue的连接将变为僵尸,并且在重新启动客户端应用程序之前永远不会返回.

我们已经尝试在BlockingDequeue和PooledConnectionManager上设置超时但是没有帮助,我猜是因为超时是在服务器端强制执行的.

这种类型的容错是否构建在服务堆栈中,我们错过了它?

或者是我们的实现应该处理的东西?如果有,是否有任何推荐的方法?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有