Dubbo源码简析-序言

接下来一段时间我准备写一系列关于Dubbo源码的文章,这里记录一下最近的一些想法,就当做是序言吧。为什么要写Dubbo源码的分析一个重要的原因是,最近产线上出现了一次Dubbo使用不当造成的问题:震惊!日志级别居然可能导致Dubbo出现空指针异常 。因为
...
阅读全文

Redis缓存删不掉?查看你的Key序列化方式吧

最近问题有点多,这不,系统中的一个Redis缓存删不掉了。。。。问题我们的应用程序中,存在一个发Queue清缓存的功能。具体实现就是将要删除的Key作为Queue的内容传入,然后调用方法来清除Redis缓存。这个功能是在A系统上完成的。但问题是缓存并不是在A系统上添加的。为了完成某些测试,需要将B系统上添加的一个Redis缓存删掉,尝试了N次,发
...
阅读全文

震惊!日志级别居然可能导致Dubbo出现空指针异常

你可能是被标题吸引过来的,但这确实是一次真实的产线事件。日志级别导致Dubbo出现空指针异常,这个是在查看源码排查问题之后,反推得到的结论。文章所用Dubbo版本为2.6.3问题复现Consumer A服务依赖Provider B服务。Consumer A先启动了,此时注册中心无B服务实现,而后Provider B启动
...
阅读全文

Java二维码图片处理

写这个篇文章是为了记录一下使用Java操作二维码的一些套路。因为在做这件事的时候,是遇到了一些问题的,这里记录一下,以备不时之需。需求根据文字内容生成二维码,在二维码中间加入logo图片,最后将二维码嵌入外部背景图中,写入到指定路径效果测试代码:String
...
阅读全文

当策略模式遇上Spring

策略模式是一种比较简单的模式。一般来说,我们可以根据不同的任务类型,来选择不同的执行策略。一般策略模式对于Java语言来说,一般来说可以简化如下:if ("01".equals(type)) { firstStrategy.execute(); } else if ("02".equa
...
阅读全文