logo头像

Aoho's Blog

mac下使用脚本为图片加水印、上传图床

mac下使用脚本为图片加水印、上传图床

为什么会有这样的需求?笔者经常用markdown写一些东西,图片是文章中必不可少的。一般情况下,都是先是将画好的图保存到本地的某个地方,然后手动将图片上传到OSS(如七牛云),最后拷贝外链地址加到文章中。 另一种场景是加水印。原创不易...

如何写好git commit log

如何写好git commit log

代码差异(diff)可以告知改动的内容,但只有提交信息才能正确地告诉你为什么(why)。Git仓库的贡献者知道,和后续开发者(事实上未来就是他们自己)沟通一个改动的上下文(context),最好方法就是通过一个好的 git 提交信息。...

Java SPI机制详解

Java SPI机制详解

SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制。SPI是一种动态替换发现的机制, 比如有个接口,想运行时动态的给它添加实现,你只需要添加一个实现。我们经常遇到的就是jav...

Spring Retry重试机制

Spring Retry重试机制

在调用第三方接口或者使用mq时,会出现网络抖动,连接超时等网络异常,所以需要重试。为了使处理更加健壮并且不太容易出现故障,后续的尝试操作,有时候会帮助失败的操作最后执行成功。例如,由于网络故障或数据库更新中的DeadLockLoser...

详解Hystrix资源隔离

详解Hystrix资源隔离

本文作者cangwu,文章节选自其即将出版的《Spring Cloud组件源码解析与高级应用》 一书。 在货船中,为了防止漏水和火灾的扩散,一般会将货仓进行分割,避免了一个货仓出事导致整艘船沉没的悲剧。同样的,在Hystrix中,...

Spring中的事件驱动模型(二)

前文回顾前一篇文章讲了Spring中的事件驱动模型相关概念。重点篇幅介绍了Spring的事件机制,Spring的事件驱动模型由事件、发布者和订阅者三部分组成,结合Spring的源码分析了这三部分的定义与实现。本文主要结合具体例子讲解S...