
架构
文章平均质量分 95
Throwable文摘
这个作者很懒,什么都没留下…
展开
-
冷饭新炒:理解Redisson中分布式锁的实现
前提在很早很早之前,写过一篇文章介绍过Redis中的red lock的实现,但是在生产环境中,笔者所负责的项目使用的分布式锁组件一直是Redisson。Redisson是具备多种内存数据...原创 2021-01-11 21:53:13 · 2306 阅读 · 4 评论 -
基于Canal和Kafka实现MySQL的Binlog近实时同步
前提近段时间,业务系统架构基本完备,数据层面的建设比较薄弱,因为笔者目前工作重心在于搭建一个小型的数据平台。优先级比较高的一个任务就是需要近实时同步业务系统的数据(包括保存、更新或者软删除)到一个另一个数据源,持久化之前需要清洗数据并且构建一个相对合理的便于后续业务数据统计、标签系统构建等扩展功能的数据模型。基于当前团队的资源和能力,优先调研了Alibaba开源中间件Canal的使用。这篇文...原创 2020-03-13 00:45:21 · 8251 阅读 · 2 评论 -
编写一个可复用的SpringBoot应用运维脚本
前提作为Java开发者,很多场景下会使用SpringBoot开发Web应用,目前微服务主流SpringCloud全家桶也是基于SpringBoot搭建的。SpringBoot应用部署到服务器上,需要编写运维管理脚本。本文尝试基于经验,总结之前生产使用的Shell脚本,编写一个可以复用的SpringBoot应用运维脚本,从而极大减轻SpringBoot应用启动、状态、重启等管理的工作量。本文的Sh...原创 2020-03-03 23:43:08 · 3726 阅读 · 0 评论 -
项目架构级别规约框架Archunit调研
背景最近在做一个新项目的时候引入了一个架构方面的需求,就是需要检查项目的编码规范、模块分类规范、类依赖规范等,刚好接触到,正好做个调研。很多时候,我们会制定项目的规范,例如:硬性规定项目包结构中service层不能引用controller层的类(这个例子有点极端)。硬性规定定义在controller包下的Controller类的类名称以"Controller"结尾,方法的入参类型命名以"...原创 2020-02-12 09:47:34 · 4020 阅读 · 0 评论