
技术
文章平均质量分 72
码农王二小
学习学习
展开
-
JVM里面比较常问到的CMS和G1
1.JVM垃圾收集器JVM在历史长河里面出现了很多的垃圾收集器,咱们总结一下新生代收集器:Serial、ParNew、Parallel Scavenge老年代收集器:CMS、Serial Old、Parallel Old整堆收集器: G1在后面就是ZGC了。Serial和Serial Old是串行的垃圾回收器,一般是在早期内存比较小的时候才会使用到的。Parallel Scavenge、Parallel Old是并行的垃圾收集器,也就是所谓的PS+PO,目前好多公司没有优化的时候原创 2021-05-13 11:58:08 · 2787 阅读 · 0 评论 -
JVM----对象怎么到的老年代
1.什么是Minor GCJVM堆内存主要分为新生代和老年代,Minor GC就是回收新年带的GC,也称为Young GC,老年代的GC 就是 Full GC。新生代又分为Eden区和两个Servivor区,这个在下面的时候可能会用到。(两个Servivor区就简称为S1区和S2区)2.躲过15次的GC之后进入老年代每次对象新生成的时候,会在Eden区生成,如果Eden区满了,就会发生一次Minor GC,这个时候会把Eden区还存活的对象复制到S1区,这个时候从Eden区到S1去的对象,他原创 2021-02-26 18:37:03 · 724 阅读 · 0 评论 -
接口幂等性要怎么防止
接口的幂等性是什么?直接百度就可以出来,百度百科中是这么解释幂等的,在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。那么在我们平时开发的时候这种接口幂等性遇到的多么?我经历的这几家公司差不多每次都会遇到这种因为多次操作导致接口不幂等的情况,每次也很无奈的去直接操作数据库,把多余的数据删除了。前端时间,我所负责的一个业务就出现了接口频繁操作,导致数据重复的情况,而且持续了好长一段时间,测试大佬们也每天都在催着我解决这个问题。等我看完代码的时候我发现,我在核心的代码里面原创 2021-02-02 16:25:54 · 424 阅读 · 0 评论 -
简述Ribbon的原理
1.Ribbon的大体流程一般我们在使用SpringCloud框架的时候并不知道Ribbon是怎么使用的,那么如果我们想要去研究它,应该从什么地方入手呢?如果在没有使用Feign调用接口的时候,我们肯定会选择RestTemplate来调用,Ribbon给提供了一个负载均衡的一个标注@LoadBalanced,可以加在RestTemplate上,这个就是我们接下来要看Ribbon的入口了。@LoadBalanced底层其实就是个拦截器,拦截了所有的RestTemplate调用的接口,在通过调用的.原创 2021-01-26 19:51:22 · 3764 阅读 · 0 评论 -
Eureka Client与Eureka Server之间的心跳机制
1.心跳是从什么时候开始的在每一个EurekaClient启动的时候,都会有一个HeartbeatThread的心跳线程,这个就是一个后跳线程,保证默认30秒的时候向EurekaServer发送一个信息的请求,告诉EurekaServer当前的EurekaClient还存活着。eureka.instance.lease-renewal-interval-in-seconds,这个参数可以来配置对应的心跳间隔时间。2.EurekaServer端接收到心跳做了什么操作EurekaServ...原创 2021-01-23 12:15:29 · 1612 阅读 · 0 评论 -
Eureka Server的多级缓存
最近加班比较多,所以没有太多的时间来写博客,希望每位小伙伴都是体谅一下。首先介绍一下EurekaService的多级缓存有哪些,当然在上节的时候也说过了,这里在说一下,readWriteCacheMap(读写缓存)和readOnlyCacheMap(只读缓存)。1.每次EurekaClient是怎么判断是使用的是那个缓存里面的数据的呢?第一步是先从只读缓存里面去获取数据,如果没有再从读写缓存里面去获取数据,这个时间,可能会出现这两个缓存的数据都没有,那么EurekaClient是直接从Eu...原创 2021-01-16 15:08:38 · 440 阅读 · 0 评论 -
Eureka Client怎么获取对应的Eureka Server里面的注册表的信息
EurekaClient在第一次启动的时候会全量拉去服务,这个是毫无疑问的。 EurekaClient在之后的运行过程中是怎么来去EurekaServer里面的注册表的信息的呢?反正一共就是两个答案,一个是全量,一个是增量。每次都全量拉取,肯定是有点浪费带宽的,那么现在确定的是,每次拉取的时候都是增量拉取的。 EurekaClient多长时间会拉取一次增量的数据库,默认的情况下是30秒拉取一次,这个参数是可以配置的,可以使用eureka.client.registry-fetch-interval-se原创 2021-01-08 18:56:49 · 2586 阅读 · 0 评论 -
Redis不经常使用的结构-BitMap、GeoHash、HyperLogLog
首先呢,今天也是元旦的最后一天假期了,大家是不是在元旦的时候也给自己立了好多的目标呢,我呢,今年就立个小目标,争取,以后的每1~2周可以有时间来写一篇文章,不管好坏,希望在明年的这个时候自己的博客里面最少可以看得出来,自己今年的一些努力。这里我就不说Redis的基本结构了,大家在平时的工作的时候都已经使用的滚瓜烂熟了,自己在平时的面试的时候想想也就能知道,我在面试过程中,这个五个基本类型都说不出来的几乎是没有的了。那么就来说说今天的主要的几个数据类型BitMap、GeoHash、HyperLogLog。原创 2021-01-03 22:33:51 · 196 阅读 · 0 评论