学习
文章平均质量分 64
上班水博客
这个作者很懒,什么都没留下…
展开
-
Seata整合nacos
author:zxwemail:502513206@qq.com@ Jishou University1.前言之前一直使用的是seata+eureka的方式来使用,最近自己在家的时候忽然想用nacos来试试,毕竟之前没怎么用过。使用后发现和eureka的用法还是差别蛮大的,折腾了一天才把项目跑起来,以此来记录下使用方法。2.使用在使用前当然得先下载相关的包,这边说下我使用的版本nacos:https://gitee.com/mirrors/Nacos?_from=gitee_search 我原创 2020-12-06 13:38:25 · 1384 阅读 · 1 评论 -
eureka源码系列 - 设计模式在eureka中的使用
eureka源码系列 - 设计模式@author:zxw@email:502513206@qq.com@ Jishou University1.前言看了eureka的源码后,在eureka中也运用了一些设计模式,就让我们学习下设计模式在项目中的实际运用2.Builder模式在eureka中,实例的信息保存在InstanceInfo对象中,而InstanceInfo和EurekaRegistration都是通过Builder模式构造出来的,实例代码如下InstanceInfo publi原创 2020-09-07 15:38:26 · 458 阅读 · 0 评论 -
jjwt源码解析
jjwt源码解析author:zxwemail:502513206@qq.com@ Jishou University1.前言最近在做一个jwt授权服务,其实也就是给请求的用户生成一个token,不过关于token的验证并不在我服务负责,而是由网关去统一处理。jwt之前也用过几次,不过不是很熟悉只知道是通过base64Url算法进行加密,这次刚好用到了所以来看看jjwt的实现。2.源码解析在java中导入jjwt的包就可以使用包中提供的Builder生成jwt的token,以下是基础的用原创 2020-09-02 11:06:44 · 540 阅读 · 0 评论 -
eureka源码系列 - 服务下线
eureka源码系列 - 服务下线@Author:zxw@email:502513206@qq.com@school:吉首大学1.前言在eureka中服务既然有上线的概念当然就有下线的概念,服务下线分为两种方式,一种是通过api调用手动下线,另一种是直接关闭eureka服务,然后eureka检测不到响应后会自动下线2.强行中止程序主要是通过DiscoveryClient中的定义好的eurekaTransport中取出对应的client发起远程调用PeerReplicationResourc原创 2020-08-21 11:11:06 · 279 阅读 · 0 评论 -
eureka源码系列 - 续租流程
eureka源码系列 - 续租流程@Author:zxw@email:502513206@qq.com@school:吉首大学1.前言在eureka中有3个定时任务,分别为心跳检测heartbeatExecutor,注册表拉取cacheRefreshExecutor,实例信息更新instanceInfoReplicator。2.拉取注册中心服务起点是由CacheRefreshThread线程进行调用DiscoveryClient.refreshRegistry()该方法的主要作用就是在拉取注原创 2020-08-19 16:55:58 · 261 阅读 · 0 评论 -
Logger日志框架使用学习
Logger日志框架使用学习1.前言最近也开始注重开发的规范,以前开发项目的时候很少会去使用日志框架记录一些东西,部门大佬也提了希望我们着手开始尊重开发规范,所以先学习下日志框架的用法以及应用场景2.Logger源码我们在代码中经常能够看到以下代码,该方法的作用就是返回与参数传递类对应的logger对象。这边主要是有个LoggerFactory对我们的日志进行管理,然后从factory中取出对应的Loggerprivate static Logger logger = LoggerFactory.原创 2020-08-19 11:34:36 · 629 阅读 · 0 评论 -
eureka源码系列 - 配置类
eureka源码系列 - 配置类@Author:zxw@email:502513205@qq.com@school:吉首大学此文为该鸭子上架,不建议观看,后续有时间在对文章总结优化1.前言对于我们刚学习eureka入门教程的同学来说,最常做的就是在配置文件上填写eureka相关参数信息,然后配合一个注解就成功启动了eureka服务,所以了解eureka的配置文件相关参数以及默认值也是非常重要的,就让我们一起打开源码看看2.面试题最近我在面试一家公司的时候,因为简历上有写springcl原创 2020-08-11 11:42:12 · 198 阅读 · 0 评论 -
eureka源码系列 - 启动过程
eureka源码系列 - 启动过程@Author:zxw@email:502513205@qq.com@school:吉首大学此文为该鸭子上架,不建议观看,后续有时间在对文章总结优化1.前言最近更换了公司,所使用的技术也到了微服务这块,目前所采用的架构为springcloud微服务全家桶,所以也深入研究下springcloud相关组件的源码。今天讲的为eureka的启动过程2.源码解析刚开始看源码其实也挺懵逼的,不知道从何处看起,从网上搜的学习资料也零零散散,并不太适合自己去看。但是想原创 2020-08-11 10:27:56 · 581 阅读 · 0 评论 -
java - 自己动手实现负载均衡算法
ribbon-负载均衡算法@Author:zxw@email:502513205@qq.com@school:吉首大学1. 前言 最近在学习ribbon时了解到有一个负载均衡的机制,代码如下,相信很多人都使用过。@LoadBalanced@Beanpublic RestTemplate restTemplate(){ return new RestTemplate();}2.轮询算法轮询算法的重点还是在于保持顺序性,在源码中保持顺序的方法是使用一个atomicInteg原创 2020-07-24 22:43:06 · 403 阅读 · 0 评论 -
缓存系列 - 自己动手做缓存
缓存设计前言在写代码的时候缓存可以说是用的比较多了,主要还是用来缓存已经查询出的一些数据方便下一次能够更加快速的获取对应的结果,比如同一条sql或者以及比较复杂的sql等等,其中比较出名的就是redis缓存了,因为基于内存操作且是分布式的缓存所以项目中用的比较多了,但是一般的框架也会实现本地缓存,在现在分布式项目下,本地缓存无法跨过服务器所以用处被降低,但是大多数项目还是会设置本地缓存,毕竟不可能让别人使用你的框架还得先开启一个redis才能使用,这样不合理也没必要,所以想根据市面上框架的缓存设计进行原创 2020-07-14 12:57:00 · 1114 阅读 · 2 评论