当前位置: 首页 > news >正文

StackExchange.Redis 高并发下timeout超时问题如何解决?


查看服务端程序负载还行,根据打印的连接看到一知半懂,按GitHub的issue提示,这2个Busy的数量不能比Min的大,即要提示Min的数值;

的各个字段:

  • Timeout performing EXEC (1000ms): 表示在执行一个事务(MULTI...EXEC命令)时发生了超时,超时时间为1000毫秒。

  • next: MULTI: 下一个要执行的命令是MULTI,这表明客户端正尝试开始一个事务。

  • inst: 19: 表示当前连接对应的Redis实例编号为19。

  • qu: 0: 表示当前连接的队列长度为0,即没有待处理的请求。

  • qs: 3: 表示当前连接已经发送了3个请求,但还没有收到完整的响应。

  • aw: False: 表示异步写操作当前不可用。

  • bw: SpinningDown: 表示异步写操作处于“SpinningDown”状态,可能是正在准备关闭或者处于空闲状态。

  • rs: ReadAsync: 表示读操作采用了异步方式。

  • ws: Idle: 表示连接处于空闲状态。

  • in: 22: 表示当前连接的输入缓冲区中有22个字节的数据等待处理。

  • in-pipe: 0: 表示输入管道中没有待处理的数据。

  • out-pipe: 0: 表示输出管道中没有待发送的数据。

  • serverEndpoint: 172.16.100.102:6379: 表示连接的目标服务器地址为172.16.100.102,端口为6379。

  • mc: 1/1/0: 表示当前连接池中有1个可用连接、1个已连接但空闲的连接,以及0个正在被使用的连接。

  • mgr: 8 of 8 available: 表示连接管理器中共有8个连接,其中8个可用。

  • clientName: ecs-614a-0201132(SE.Redis-v2.6.48.48654): 表示客户端名称为"ecs-614a-0201132",使用的是SE.Redis版本2.6.48.48654。

  • IOCP: (Busy=0,Free=1000,Min=4,Max=1000): 表示IOCP(Input/Output Completion Port)线程池的状态,包括繁忙线程数、空闲线程数,以及线程池的最小和最大容量。

  • WORKER: (Busy=14,Free=32753,Min=4,Max=32767): 表示工作线程池的状态,包括繁忙线程数、空闲线程数,以及线程池的最小和最大容量。

  • POOL: (Threads=26,QueuedItems=133,CompletedItems=1657317): 表示连接池的状态,包括线程总数、待处理的项数以及已完成的项数。

  • v: 2.6.48.48654: 表示Redis服务器的版本号为2.6.48.48654。

IOCP: (Busy=85,Free=915,Min=8,Max=1000),

WORKER: (Busy=100,Free=32667,Min=8,Max=32767),

Timeout in Redis · Issue #1150 · StackExchange/StackExchange.Redis · GitHub

按里面有参考的连接如下,果然没有这个错误了。

     public static void Main(string[] args){#if !DEBUG//为了解决redis 超时的问题,设置最小线程数量//https://gist.github.com/JonCole/e65411214030f0d823cbThreadPool.SetMinThreads(250, 250);#endifCreateHostBuilder(args).Build().Run();}

 

.net core 3.1 使用StackExchange.Redis 高并发下timeout超时问题如何解决?_已解决_博问_博客园

http://www.lryc.cn/news/229342.html

相关文章:

  • JAVA基础7:数组
  • Riskified: 2023年电商政策滥用问题恶化,正严重挑战商家盈利底线
  • 【论文阅读】多模态NeRF:Cross-Spectral Neural Radiance Fields
  • Huggingface
  • 【深度学习】pytorch——常用工具模块
  • 【Android】统一系统动画
  • 京东数据运营与分析:如何全面获取电商销售数据?
  • du_命令可以像find_命令那样列出最大的文件吗
  • asp.net blazor集成TinyMCE.Blazor
  • CSS注入的四种实现方式
  • 突然消失的桌面文件如何恢复?详细教程让你轻松解决问题!
  • Springboot+Dubbo+Nacos 集成 Sentinel(入门)
  • ARPG----C++学习记录05 Section10 武器类,IK重定向,装备和捡起武器,动画蓝图
  • CSRF跨站请求伪造
  • 修改kernel驱动配置文件
  • 采集摄像头数据的Golang应用
  • Axure9学习
  • 使用gitflow时如何合并hotfix
  • (七)Spring源码解析:Spring事务
  • Stable Diffusion 是否使用 GPU?
  • DevOps平台两种实现模式
  • Java 简单实现一个 UDP 回显服务器
  • element ui中Select 选择器,自定义显示内容
  • 机器视觉行业,日子不过了吗?都进入打折潮,双11只是一个借口,打广告出新招,日子不好过是真的
  • 【手动创建UIWindow Objective-C语言】
  • 【学习辅助】Axure手机时间管理APP原型,告别手机控番茄任务模板
  • [PyTorch][chapter 62][强化学习-基本概念]
  • 使用 Stable Diffusion Img2Img 生成、放大、模糊和增强
  • 【Git】第一篇:Git安装(centos)
  • 在uniapp中通过自定义事件使页面之间传递数据