1. 需求

  有一个需求job定时5秒一次,job【消费者】调用dsc【提供者】提供的dubbo完成:先清空redis的某个key,然后再往redis中放入新的数据,这是一个定时任务,需要每隔5秒执行一次;

2. 问题场景

  某次上线发布之后,发现再写入redis中添加了多一点数据的写入,然后发布之后发现一个奇怪的情况,就是redis中数据一下子有,隔几秒又没有的问题,查找了一个早上,盯着日志看了很久都没发现问题;

3. 解决过程

  最后询问一个同事,

  他问:是走dubbo接口的吗?

  回:是

  他问:那你可以看一下dubbo-mointer会不会存在两个提供者。

  最后从dubbo的监控中看到有两个dubbo的提供者,url完全一样,但是一个服务上线了新的代码,一个服务忘记上线新代码了,导致如果job调用到新的代码就会有新数据的返回,如果调用旧的就会没有数据;

4. 解决方案【选一种执行】

  4.1 将旧的服务停止

  4.2 将服务代码更新

5. 总结

  使用微服务架构的时候,很多时候考虑问题不能用单机模式的思维了,需要转换成分布式的思想,就是服务可能分布在多个地方,查找问题的时候需要从多个角度来思考问题。

最新文章

  1. Android 环境搭建
  2. C++公有派生
  3. 2层Xml读取类
  4. cookie那些事
  5. Eclipse中使用版本控制----Git
  6. Spring Security入门(2-2)Spring Security 的运行原理 2
  7. DSAPI HTTP监听服务端与客户端_指令版
  8. UBUNTU安装 SSH 服务
  9. python程序在命令行执行提示ModuleNotFoundError: No module named 'XXX' 解决方法
  10. 55.Vue环境搭建
  11. docker删除镜像文件时,出现image is referenced in multiple repositories如何解决
  12. 18.纯 CSS 创作 404 文字变形为 NON 文字的交互特效
  13. [leetcode]Max Points on a Line @ Python
  14. Android和Linux下设备节点的创建笔记
  15. Java 裁剪图片
  16. EasyTouch5初步用法和其中的一个Bug
  17. Tomcat服务器端口的配置
  18. c#中var类型用法同dynamic,object区别
  19. 用canvas和原生js写的一个笨鸟先飞的小游戏(暂时只有一个关卡)
  20. [转载]FFmpeg完美入门[1] - FFmpeg介绍及安装

热门文章

  1. 《阿里巴巴 Java 开发手册》划重点!
  2. PHP实现微信发红包功能2
  3. day4-课堂笔记
  4. shiro实战系列(十二)之常用专业术语
  5. OpenCV (C++) 几何形状识别(面积过滤、横纵比过滤等等)
  6. OpenCV——ROI截取、线性混合、通道分离、合并、亮度对比度调整
  7. javascript实现拖曳与拖放图片
  8. openJDK环境搭建编译(fedora)
  9. jsp泛型支持
  10. 报错Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA