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

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

当策略模式遇上Spring

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

使用poi+itextpdf将word转成pdf

将word转换成pdf确实有很多种方案!背景最近正好需要做一个这样的功能,需求是将word模板进行签名后转换为pdf。为此,我花了一点时间去网上找方案。期间遇到了一些坑,这里记录一下。方案选择首先,因为代码是跑在linux服务器上的,所以一般的,依赖windows office功能的方案就行不通了。这就排除了jacob这样一些效...
阅读全文

记一次sftp工具类导致jvm频繁GC事件

背景项目中需要使用sftp进行远程文件的读取,入库。原有代码中存在一个SFTPUtil类,底层使用的是jsch库调用方法。经过事件前一天正好进行了发版,上线版本中,我修改了原有SFTPUtil中的一个问题:原有代码读取完成了之后,没有关闭连接,导致读取了文件之后,连接一直保持着。我在此次版本中关闭了连接。当天中午,...
阅读全文