关于springboot的疑问

从入门到要饭 2020-11-28 10:25:13
现在有一个情况,我的字典表使用非常频繁,所以我打算把它放入缓存中,最终方案时在 springboot启动类中调用放入缓存方法,以下是我的代码



具体实现就不表示了,重点不是这个,这样写之后,可以实现启动完成之后获取字典数据并放入缓存,但现在出现了神奇的一个现象

如果启动完成,我关掉redis,主线程就会卡住,执行任意方法都不行,控制台会显示重连(好像是),图片如下



这个过程会一直持续到我打开redis为止,包括所有的请求都会在redis就绪之后开始执行,为什么?
...全文
4175 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
半道道 2020-11-29
  • 打赏
  • 举报
回复
写在启动类中,有点相当于占用主线程一样,如果连接不到redis,会持续连接,等待连接成功为止
亦夜 2020-11-28
  • 打赏
  • 举报
回复
这个跟你写了一个错误的mysql连接地址是一样的,一直连接不上不得重新尝试连接,如果直接跳过不管的话,那使用mysql就没有什么意义了,可能会因为一些网络原因导致连接不上,一直重试下一秒可能网络恢复,就可以正常使用了,如果你不需要,也可以关闭
从入门到要饭 2020-11-28
  • 打赏
  • 举报
回复
引用 1 楼 亦夜 的回复:
这个跟你写了一个错误的mysql连接地址是一样的,一直连接不上不得重新尝试连接,如果直接跳过不管的话,那使用mysql就没有什么意义了,可能会因为一些网络原因导致连接不上,一直重试下一秒可能网络恢复,就可以正常使用了,如果你不需要,也可以关闭
但是我写在其他任意一个地方都不会这样子,就是在启动类里面就这个样子了,mysql我想是同理的。。
八爻老骥 2020-11-28
  • 打赏
  • 举报
回复
估计读取线程用了线程等待,而又没设置超时,或超时时间很长,直到读到数据才返回。

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧