写这个博客的原因是今天公司生产环境出现了这个错误,而且是全部服务都抛这个错误,很明显其他文章中给出的原因和解决方案并不适用于这种情况。
比如:
我们的症状是所有的redis相关操作都抛出这个错误。还好想起在以前碰到过这个问题,翻了老半天以前的笔记(Tea,有道,印象,为知笔记换过好几个,有些东西想着很简单就没跟着迁移),最终找到了当时记录得一句话:Redis存在一个空的key时,会出现无法写入和读取并抛出操作类型错误的问题,这一般是由于代码问题造成的,使用keys * 或则可视化工具就可以看到,可以执行del " "对空key进行删除。
然而,公司redis的的key实在太多了,几十万的key,没办法去查询是不是这个问题。只能先尝试一番:del " "。
卧槽~~好了!
为了防止以后碰到类似问题再半天找不到原因或者找不到笔记,于是写个博客重新记录一下,同时也帮助碰到过同样问题的朋友们(然而出现这种空Key的原因还是没找到ing)。