返回顶部
首页 > 资讯 > 数据库 >Redis db连接超时怎么办
  • 889
分享到

Redis db连接超时怎么办

2024-04-02 19:04:59 889人浏览 薄情痞子
摘要

小编给大家分享一下Redis db连接超时怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!问题描述:现象是redis db访

小编给大家分享一下Redis db连接超时怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

问题描述:

现象是redis db访问出现超时。

问题分析:

网络流量出现瓶颈,访问变慢。

  • [Machine1 ~]$ ping 192.168.10.66

  • PING 192.168.10.66 (192.168.10.66) 56(84) bytes of data.

  • 64 bytes from 192.168.10.66: icmp_seq=1 ttl=64 time=17.7 ms

  • 64 bytes from 192.168.10.66: icmp_seq=2 ttl=64 time=17.2 ms

  • Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 0

  •   Queueing strategy: fifo

  •   Output queue: 0/40 (size/max)

  •   5 minute input rate 874639000 bits/sec, 85931 packets/sec –网络流量每秒800m bit

  •   5 minute output rate 47017000 bits/sec, 75274 packets/sec

  •      96257027404 packets input, 21537684106526 bytes, 0 no buffer

  •      Received 70287596 broadcasts (69442689 multicasts)

主机的网卡流量也达到了瓶颈。

redis主机的某些实例内存也开始报警,超过90%。

停止中间件应用后,发现问题还是没有解决,网络流量依旧很高。

将redis db切换到备机后,系统恢复,网络流量下降。redis db从库的内存使用率很低。

发生问题时当时主库的内存最高是14g,但是从库的内存才1.9g。那主库的内存占用是从哪里来的呢?

根据网络同事的反馈,网络请求的大小大概也就几十个字节,但是输出的大小每次达到了几M。

Redis输出缓冲区可能占用大量的内存空间,这和oracle的pga内存非常类似,每个oracle会话会独立分配一个内存区域。那么继续看看本案例是否也是输出缓冲区内存占用过多。查看zabbix相关指标,发现client_longest_output_list的确有增加。应该是输出缓冲区占用内存较大,也就是有大量的数据

从Redis服务器向某些客户端输出。


查看当时的日志,有omem比较大的情况。

  • id=411550 addr=172.24.1.30:34542 fd=280 name= age=2 idle=1 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=32768 obl=0 oll=9

  • omem=237928 events=rw cmd=lrange

后续从slowlog中也发现有返回数据较多的操作。

  • [machine1 ~]$redis-cli -p 6500 slowlog get 10

  • 1) 1) (integer) 2245

  •     2) (integer) 1460002216

  •     3) (integer) 23236

  •     4) 1) "SMEMBERS"

  •        2) "prdkey1"

一次获取9075多个元素。

  • 127.0.0.1:6410> scard prdkey1

  • (integer) 9075


经过和开发一起分析,类似于Oracle中的数据倾斜,redis的某个分片上返回的数据很大,导致服务器向客户端发送数据的buffer的积压。后续开发将这些数据分批取出,并放到JVM中进行缓存

以上是“Redis db连接超时怎么办”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网数据库频道!

您可能感兴趣的文档:

--结束END--

本文标题: Redis db连接超时怎么办

本文链接: https://lsjlt.com/news/69735.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Redis db连接超时怎么办
    小编给大家分享一下Redis db连接超时怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!问题描述:现象是redis db访...
    99+
    2024-04-02
  • 应用连接超时排查DB MySQL
    【问题概述】10:26分,应用超时报错如下: [2020-04-22 10:25:50,928] [ERROR] [DruidPooledStatement:357] ...
    99+
    2024-04-02
  • 怎么解决redis连接超时问题
    这篇文章给大家分享的是有关怎么解决redis连接超时问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。问题描述:redis连接超时,然后定位到redis配置文件目录被删除,接着尝...
    99+
    2024-04-02
  • 云服务器连接超时怎么办
    首先,我们需要了解云服务器的连接原理。云服务器是一种基于网络的服务,它使用网络中的计算资源来为用户提供服务。如果云服务器连接超时,那么我们需要检查网络连接状态。如果网络连接正常,我们可以通过重新启动云服务器来解决连接超时的问题。 其次,我...
    99+
    2023-10-28
    服务器
  • redis-cli连接redis集群时报错怎么办
    在使用 redis-cli 连接 redis 集群,进行数据操作时,有报错./redis-cli -h 192.24.54.1 -p 6379 -a '123456' 192.24.54.1...
    99+
    2024-04-02
  • 云服务器连接超时怎么办啊
    首先,我们应该检查服务器的设置。检查是否正确配置了IP地址、端口号、DNS服务器等信息,以确保服务器的设置不会影响到网络连接。如果配置不正确,则可以重新配置服务器的设置,确保其正常运行。 其次,我们需要确保服务器的网络连接是稳定的。如果服...
    99+
    2023-10-27
    服务器
  • 阿里云服务器连接超时怎么办
    如果您的阿里云服务器连接超时了,请按照以下步骤进行操作: 检查计算机的网络连接:检查网络是否正常,是否有数据包正在网络传输。 重启服务器:如果计算机无法重新启动,请尝试重启服务器。 检查计算机的电源:如果计算机没有安装电源适配器,请确保...
    99+
    2023-10-27
    阿里 服务器
  • 云服务器连接超时怎么办解决
    检查云服务器的资源使用情况:检查云服务器的CPU、内存、存储等资源使用情况,确保其处于可用状态。如果发现资源不足,需要及时增加资源,确保云服务器的正常运行。 检查网络连接问题:检查云服务器的网络连接是否正常,检查网络设置是否正确。可以使用...
    99+
    2023-10-27
    服务器
  • redis连接超时该如何解决
    redis连接超时的解决方法:1.关闭防火墙。2.开放端口,将代码添加到防火墙的规则中。3.取消绑定,在redis.conf 配置文件中将bind 注释掉。redis连接超时的解决方法:关闭防火墙,例如:chkconfig iptables...
    99+
    2024-04-02
  • 亚马逊远程服务器连接超时怎么办
    1. 检查网络连接 首先,您需要检查您的网络连接是否正常。如果您的网络连接不稳定或者速度较慢,可能会导致连接超时。您可以尝试重新启动您的路由器或者调整您的网络设置来解决这个问题。 2. 检查安全组设置 如果您使用的是亚马逊 Web 服务(...
    99+
    2023-10-27
    亚马逊 服务器
  • oracle连接超时怎么解决
    oracle 连接超时问题最常见的原因是网络连接问题或数据库服务器响应缓慢。网络连接问题包括:检查网络连接。调整网络设置。增加连接超时值。数据库服务器响应缓慢问题包括:检查数据库负载。调...
    99+
    2024-05-21
    oracle
  • PHP连接超时时间怎么设置
    在我们使用PHP进行网络请求时,有时候我们需要调整连接超时时间来适应不同的网络环境和请求类型。本文将介绍PHP连接超时时间,其原理和设置方法。连接超时时间是指当我们进行网络请求时,如果服务器无法响应请求,那么客户端需要等待多长时间后才会超时...
    99+
    2023-05-14
    php
  • jdbc怎么设置连接超时时间
    在JDBC中,可以使用`java.sql.Statement`或`java.sql.Connection`对象的`setQueryT...
    99+
    2023-10-27
    jdbc
  • Java连接超时
    java.net.SocketTimeoutException: connect timed out 通常表示无法建立到远程服务器的连接,可能是由于网络问题或目标服务器不可用导致的。这种情况下,可以尝试以下几种解决方法: 检查网络连接:可...
    99+
    2023-09-02
    java
  • dbeaver连接mysql超时怎么解决
    如果使用DBeaver连接MySQL超时,可以尝试以下解决方法: 检查网络连接:确保你的网络连接正常,并且能够访问MySQL服务器...
    99+
    2024-04-09
    dbeaver mysql
  • Redis偶发连接失败怎么办
    这篇文章主要介绍了Redis偶发连接失败怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。前言本文主要给大家介绍了关于Redis偶发连接失...
    99+
    2024-04-02
  • redis已用连接数超过怎么解决
    当Redis使用的连接数超过了配置的最大连接数限制,可以尝试以下方法解决:1. 增加Redis最大连接数:通过修改Redis配置文件...
    99+
    2023-08-30
    redis
  • oracle默认连接超时时间怎么设置
    Oracle数据库默认的连接超时时间是10分钟(600秒),可以通过修改SQLNET.INBOUND_CONNECT_TIMEOUT...
    99+
    2023-10-12
    oracle
  • 连接服务器超时怎么解决
    以下是解决连接服务器超时的一些方法:1. 检查网络连接:确保您的计算机已连接到互联网,并且网络连接稳定。如果您使用的是无线网络,请尝...
    99+
    2023-06-07
    连接服务器超时 服务器
  • oracle的dblink连接超时怎么解决
    当遇到Oracle数据库链接超时的情况,可以尝试以下解决方法: 检查网络连接:确保网络连接正常。可以尝试使用ping命令检查与目...
    99+
    2023-10-24
    oracle
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作