跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 开源一个自己的开发 “持久化异步失败重试系统”
未分類
12 9 月 2020

开源一个自己的开发 “持久化异步失败重试系统”

开源一个自己的开发 “持久化异步失败重试系统”

資深大佬 : rizon 2

地址:othorizon/AsyncRetryable

系统也没想个好名字,就随便叫一下吧。

与org.springframework.retry.annotation.Retryable的功能相似,当方法抛出指定的异常后会进行重试。
最大的区别在于,该工具会将失败的任务进行持久化(比如存储到 mysql 数据库中),当系统重启后任务依然可以继续执行。

特性

重试操作是异步执行的

这点非常重要,也就是当方法失败后,不会抛出异常而是会继续向后执行,重试操作会在任务线程中被触发。
目前任务线程设计为单线程的,任务会被循环串行执行,这是因为该工具被设计为去处理一些简单的低耗时的任务。

任务是持久化存储的

这也就表示即使系统重启任务依然可以被继续执行。
以及如果你进行了多节点的集群部署,那么任务数据将被共享执行。

使用

在需要重试的方法上添加注解@AsyncRetryable,被注解的方法参数必须为BaseTaskParam的子类

地址:othorizon/AsyncRetryable

如果各位大佬觉得有意思,厚脸皮的求个 star,目前做的还比较简单,如果确实有蛮多的人感兴趣后续会继续更新优化的,并推到 maven 仓库

其他项目:
spring 最佳实践案例:
othorizon/spring-best-practices
相关帖子:
/t/632337

如果有兴趣也欢迎 star 啊,感谢各位大佬花时间查看~

最近准备换工作了,想把自己的项目贴到简历上,但是感觉面试的人并不会看啊。

除了上面两个开源项目,还有一个在线记事本工具:
notelive.cc
该记事本主要是自己用,所以暂时也不想正经去推商业化,UI 上都很简陋,有一个实验性的功能协同编辑和很多自认为蛮有创意隐藏功能,就不详细说了,如果有兴趣直接在 v 站搜索 notelive.cc 查看历史帖子吧。

最近准备换工作了,顺便问一句,
本人在北京,java 程序员,有没有大佬相中我招我进咱们公司啊
本人在北京,java 程序员,有没有大佬相中我招我进咱们公司啊
本人在北京,java 程序员,有没有大佬相中我招我进咱们公司啊

背题和面试流程好麻烦啊。。。。

狗头.jpg

大佬有話說 (7)

  • 主 資深大佬 : rizon

    这个时间发帖,应该是没人看到啦

  • 主 資深大佬 : rizon

    标题语序有问题,没法改了,好难受。。。。
    事实证明语序并不影响人类的阅读,,你们一定没注意到的!一定没注意到!

  • 資深大佬 : lxilu

    看了一会才明白是 Java…;开发可作名词解

  • 主 資深大佬 : rizon

    @lxilu #3 疏忽了,没有备注下是 java spring 项目。
    开发做名词 这个可以的 哈哈

  • 資深大佬 : anUglyDog

    yifeishu.com 欢迎你

  • 主 資深大佬 : rizon

    啊嘞? 啊嘞嘞?
    为什么没人评论呢?
    为什么没人讨论这个工具呢?
    这东西在我的业务里用的还挺多的,对于一些流程占用时间可能过于长的场景,使用这种任务模式就很方便啊。

  • 主 資深大佬 : rizon

    好冷清~哭了

    话说昨天有人给我的 notelive.cc 微信赞赏了,有点开心~~

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具