最近做了一个多人竞拍的小功能  因为以前没做过 所以踩了很多坑
用的是 mysql + php + redis 实现的竞拍功能

这里先说一下踩得第二个坑
redis  的原因  真是欲哭无泪  解决完一个 还有一个

其实是先发现的这个 但是没办法复现 就丢上去了执行了
之后偶然把这个问题复现了
先说一下是什么问题吧 
php 捕获的异常提示是PHP Fatal error: Uncaught RedisException: read error on connection

很多人都说是 PHP-FPM的超时时间是1s钟,也就是说如果PHP程序执行超过1s钟就会中断,另外由于Redis是单线程的,
所以如果一个请求的时间太久就会造成Redis假死状态,接收不了其他请求,继而就会造成PHP程序连接报错。(这段话是我复制过来的)
说是设置php 超时时间   redis 超时时间  为-1就解决了
但没解释为什么  怎么就超时了  怎么验证超时时间可以解决

所以我才自己写的  不一定对  不一定能解决你的问题  但验证了我的问题  也解决了
redis keys * 
这个操作我现在是不能容忍的  这尼玛 什么都不知道你就查  太浪费时间了
就是这个操作 造成了 (PHP Fatal error: Uncaught RedisException: read error on connection)
我们服务器设置的默认超时时间10秒  但是这了命令的执行时间超过了10秒
服务器数据也比较多吧  没用的数据也挺多的

当然 解决办法还是设置 redis 超时时间  但有些时候我们要弄清 为什么会出现这个问题  这个才是重要的

setOption(Redis::OPT_READ_TIMEOUT,-1);

用了这么久的redis,难道他是单线程的这个知识点都不知道吗(这是领导说我的,确实不知道 现在知道了)

debug sleep 20     //这句话能帮助你复现
你可以自己复现一下  来验证

https://blog.csdn.net/qq_35336004/article/details/80923425

redis :read error on connection的更多相关文章

  1. redis的read error on connection错误解决

    昨日,公司php调用redis报错:read error on connection 2015-01-29 23:59:050.13330000,redis存放的是用户session. 在网上查询,大 ...

  2. 运行错误:Application Error - The connection to the server was unsuccessful

    在模拟器上上启动ionic4.6版本 打包成的android APK,启动了很久结果弹出这个问题: Application Error - The connection to the server w ...

  3. PHP程序连接Redis报read error on connection问题

    线上PHP程序动不动就报PHP Fatal error: Uncaught RedisException: read error on connection错误,就是连接Redis在那么1秒钟有问题, ...

  4. 【Ansible】SSH Error: ssh_exchange_identification: Connection closed by remote host

    ansible ssh到目标机器 时好时坏,报错:  SSH Error: ssh_exchange_identification: Connection closed by remote host ...

  5. 解决ionic3 android 运行出现Application Error - The connection to the server was unsuccessful

    在真机上启动ionic3打包成的android APK,启动了很久结果弹出这个问题: Application Error - The connection to the server was unsu ...

  6. Application Error - The connection to the server was unsuccessful. (file:///android_asset/www/index.html)

    问题描述: PhoneGap+Sencha Touch开发的应用,打包后的APP或者调试期间,在启动的时候提示如下信息: Application Error - The connection to t ...

  7. 关于redis的问题:RedisException with message read error on connection

    最近碰到在REDIS执行一步get操作的时候报出错误:Uncaught RedisException: read error on connection,感觉不可理解,REDIS连接没有发现问题,但是 ...

  8. [PHP][REDIS]phpredis 'RedisException' with message 'read error on connection'

    最近一个后台常驻job通过redis的brpop阻塞读取消息时,设置了永不超时 while( $re=$redis->brPop($queue_name,0) ){ } 但是在实际的使用中发现很 ...

  9. redis.exceptions.ConnectionError: Error 111 connecting to localhost:6379. Connection refused.

    $ pip install redis>>> import redis>>> conn = redis.Redis()>>> conn.keys( ...

随机推荐

  1. Veristand学习札记(3)- CD的开发

    转载:https://blog.csdn.net/mfcjishiben/article/details/79417739 1 CustomDevice开发 CD的开发必须遵照NI提供的模板进行.安装 ...

  2. JAVA面试常见问题之常见集合篇

    1.List 和 Set 区别 List 可以允许重复的对象. 可以插入多个null元素. 有序容器 Set 不允许重复的对象. 只能插入1个null元素 无序容器,可以使用TreeSet实现有序 2 ...

  3. java反编译工具使用记录

    最近试了四个反编译工具,总结一下. 先说结论,最有效果的是Procyon Decompile.使用方法:https://blog.csdn.net/u010762551/article/details ...

  4. gomod

    package main import "mycore" func main(){ mycore.ShowName() } main.go module mytest requir ...

  5. IE9没有内置鼠标手势,还要自己写

    写了个IE插件,然后获取鼠标,信息, 模拟了鼠标手势,在虚拟机里面测试,完全好使,但是现在又不敢在Win7上用了. 愁死了... 为了实现一个鼠标手势. 写的那破玩意,竟然50多K.....太大了.. ...

  6. Vue. 之 npm安装 axios

    Vue. 之 npm安装 axios 使用指令: cnpm install axios 

  7. CentOS6.5在VMware中安装

    链接:https://pan.baidu.com/s/1ggqmHxh 密码:v04l 1.启动VMware的画面 2.点击File--->New Virtual Machine 创建一台新虚拟 ...

  8. 移动端h5禁用浏览器左滑右滑的前进后退功能

    在项目运行过程中发现,用户在有左右滑动前进后退的功能的浏览器上签字时,偶然触发了前进后退会导致canvas像是重置了一样内容消失,所以需要在代码中处理这种情况. 基本原理就是在touchmove事件中 ...

  9. Python中 sys.argv的用法简明解释

    Python中 sys.argv[]的用法简明解释 sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键,所以那些试图从代码来说明它作用的解释一直没看明白.因为我们从外部取得 ...

  10. python findall函数