【Azure Redis 缓存】Azure Redis 遇见的连接不上问题和数据丢失的情况解答

问题描述

PHP应用再连接Azure Redis服务时,出现Connection Timed out。当通过升级提高Azure Redis的性能时候,发现之前的数据丢失了。


image.png

问题解答

当Redis服务出现Timeout的情况时,可以从Redis服务的指标(Metrics)开始查看,如果出现负载(Service Load)很高的情况,表明当前Redis服务的资源已经不能满足业务需求,需要提升服务端的等级。比如Redis定价层由 基础层 ------》 标准层 ------》**高级层 **。

image.png

当在升级的时候,为什么会发生数据丢失呢?

这是因为最开始使用的Redis服务为价格最便宜的基础层,即底层只有一个实例,升级的时候Redis中的数据都会丢失。


image.png

附录1:如果Service Load并不高的情况下,还是会发生Timeout问题,那么这样应该如何进一步分析问题呢?

可以应用主机上通过 tcpdump 或 netstat 协助分析网络情况。

  • tcpdump 抓取网络日志并生成 redis.cap 输出文件

    tcpdump 抓取网络包 Linux 环境主机中

    apt-get update

    apt-get -y install tcpdump

    #抓包命令为:

    non SSL 6379 tcpdump port 6379 -w redis.cap

    SSL 6380 tcpdump port 6380 -w redis.cap

  • 通过netstat可以查看当前TCP连接的情况


    image.png

参考资料

缩放 Azure Cache for Redis 实例: https://docs.azure.cn/zh-cn/azure-cache-for-redis/cache-how-to-scale#how-does-scaling-work

当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

分类: 【Azure Redis 缓存】

标签: Azure Redis Connection timed out
© 著作权归作者所有,转载或内容合作请联系作者

喜欢的朋友记得点赞、收藏、关注哦!!!

相关推荐
Mr.Entropy9 小时前
请求超过Spring线程池的最大线程(处理逻辑)
数据库·sql·spring
勇往直前plus10 小时前
Sentinel微服务保护
java·spring boot·微服务·sentinel
知其然亦知其所以然10 小时前
三分钟接入!SpringAI 玩转 Perplexity 聊天模型实战
后端·spring·langchain
小蒜学长11 小时前
基于SpringBoot+Vue的健身房管理系统的设计与实现(代码+数据库+LW)
java·数据库·vue.js·spring boot·后端
勇往直前plus11 小时前
Milvus快速入门以及用 Java 操作 Milvus
java·spring boot·embedding·milvus
彭于晏Yan11 小时前
Spring Boot中策略模式结合依赖注入的实现方式
spring boot·策略模式
计算机毕业设计木哥12 小时前
Python毕业设计推荐:基于Django的饮食计划推荐与交流分享平台 饮食健康系统 健康食谱计划系统
开发语言·hadoop·spring boot·后端·python·django·课程设计
风象南12 小时前
SpringBoot 实现无痕调试注入器,线上问题定位的新利器
spring boot·后端
DKPT21 小时前
JVM中如何调优新生代和老生代?
java·jvm·笔记·学习·spring
javachen__1 天前
Spring Boot配置error日志发送至企业微信
spring boot·后端·企业微信