摘要: 在Spring Cloud Feign的框架下,远程调用一般需要引入Hystrix来熔断限流。hystrix默认是以线程池进行资源隔离,也就是说当一个线程准备发起Feign调用时,真正进行网络请求的动作是在hystrix中的线程池中进行的。如果此时我们想要编写feign拦截器做一些自定义的事情,那么 阅读全文
posted @ 2021-10-08 16:23 caizhenya 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 本地开发需要依赖别人的服务时候,如果不想也把依赖服务启动起来,可以对自己项目中的feign client进行mock,这个工具支持直接在feign client接口上对返回值进行mock,不需要在fallback中编写负责冗长的代码来实现。 如何构建 git clone git@github.com 阅读全文
posted @ 2021-09-28 10:18 caizhenya 阅读(2031) 评论(0) 推荐(0) 编辑
摘要: Git是一款优秀的版本管理的工具。 基本命令及其用法 git merge 合并分支,将目标分支合并到当前分支 git fetch 更新远端分支,但不会merge到本地 git pull 更新远端分支并merge到本地 git clone 从远程仓库拉取代码 git checkout 切换分支,-b 阅读全文
posted @ 2021-09-28 10:01 caizhenya 阅读(361) 评论(0) 推荐(1) 编辑
摘要: 通常在一个jvm进程中,若想实现延迟逻辑,可以使用jdk自带的延迟队列DelayQueue来实现。DelayQueue中的元素PriorityQueue来实现的,DelayQueue中的元素会实现 public interface Delayed extends Comparable<Delayed 阅读全文
posted @ 2020-10-17 16:01 caizhenya 阅读(5967) 评论(0) 推荐(1) 编辑
摘要: 模板模式一般适用于有一定的流程,而且在不同的业务场景中有着不同的流程实现的情况。发布流程涉及到编译,备份,SQL执行,部署。这种情况下模板模式是一个不错的选择。 模板模式有时可以和组合模式一块使用,可以更能体现出Java面向接口编程的特性。 首先定义三个接口,分别代表流程中的不同的业务步骤 publ 阅读全文
posted @ 2020-10-14 13:13 caizhenya 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 我们已经知道在Java中,所有的类都是Object的子类,由于Object中含有equals和hashCode方法,所以在子类没有重写这两种方法时候,在对对象实例进行比较时候,会调用父类中的比较方法。 阅读全文
posted @ 2020-09-01 23:49 caizhenya 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 最近遇到了一个场景,系统需要调另外一个接口来获取配置文件的内容,但是接口没有返回值,这种情况下,这样的接口就不能直接使用了。首先想到的是在接口实现中回调自身系统的接口,把配置文件传过来,我把过程简化成了一个流程图。 1. 自身系统生成一个唯一单号,在数据库中保存一行,单号所在行的配置文件此时还是空 阅读全文
posted @ 2020-08-09 15:08 caizhenya 阅读(563) 评论(0) 推荐(0) 编辑
摘要: 由于发布系统需要上传修改过后的配置文件到服务器上,但是由于Jenkins的客户端上传文件的功能我暂时还没有研究出来,所以在Jenkins服务器上写一个Java脚本,监听端口,来获取上传文件的socket请求。 脚本采用最简单的BIO模型,整个程序只有一个线程,也就是主线程,负责监听8088端口,接收 阅读全文
posted @ 2020-08-03 21:45 caizhenya 阅读(225) 评论(0) 推荐(0) 编辑
摘要: IO是操作系统中最重要的功能之一。说起IO,其实要从最开始的同步阻塞IO模型说起。 首先理解下同步和非同步,阻塞和非阻塞。 在Linux操作系统中,数据分为内核态和用户态。用户线程在用户态中运行,键盘,鼠标动作是由内核系统调用触发。 同步,异步 同步和非同步是从消息通信的角度来区分的。如果用户态中进 阅读全文
posted @ 2020-07-26 22:46 caizhenya 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 公司的现在发布流程使用Jenkins套件,但是现在仍然是开发提交工单,由运维同事手动操作Jenkins来进行发布,流程上占用时间和大量资源。所以发布系统的需求就应运而生。由于之前从来未开发过发布系统,但是用过发布系统,自己也越来越感觉到发布系统的重要性,现在记录下Jenkins的踩坑流程。 依赖安装 阅读全文
posted @ 2020-07-26 09:11 caizhenya 阅读(564) 评论(0) 推荐(0) 编辑