Hcy Blog

保持激情,只有激情,才有动力

prometheus函数的理解

prometheus函数的理解最近在研究prometheus,花了一天时间理解了几个主要函数的原理,现在记录以下,给以后的自己看rate()函数这个函数接受一个范围counter序列,他能返回每秒钟的qps,因为counter是单调递增的,我才他是将最后一个记录的值减去第一个记录的值,再除以时间段的总秒数得到一个浮点型数字,表示每秒增长的数量。这个函数只能返回每秒的数量,如果需要每分钟的可以自己乘以60,因为是浮点类型的,所以精度应该还可以接受。与之对应的还有一个incre...

git同步远程已删除的分支

git同步远程已删除的分支现状我们使用git协作工作时,可能同事会创建一些临时分支,会将这些临时分支push到远程防止本地丢失。这些分支我们使用git fetch/pull时会拉到我们本地,存储在我们本地的远程副本区域。 当同事使用完这些分支后,他们会直接将远程分支删除,我们再次使用git fetch/pull时,并不会因为远程分支被删除了就同时将本地副本删除,而是一直保留着,这些分支对我们是没用的,如何找到并删除他们呢。解决办法使用命令git remote sho...

spring-dubbo启动过程

spring-dubbo启动过程 首先@EnableDubbo注解将DubboComponentScanRegistrar引入进来 2. DubboComponentScanRegistrar类会注册一个ServiceAnnotationBeanPostProcessor,这是一个BeanDefinitionRegistry的后置处理器。 3. 后置处理器对BeanDefinitionRegistry进行后置处理,他会使用scan扫描EnableDubbo注解上...

springboot jackson默认配置

​springboot jackson默认配置​ springboot是约定大约配置,默认就会进行比较合理的配置,自动配置jackson也是如此。下面看一下springboot是如何配置jackson的反序列化特性的。配置jackson的方法​ 想要自定义配置jackson,只需实现Jackson2ObjectMapperBuilderCustomizer接口,并注册到spring容器里即可。平时我们主要关注下面两个配置,一个是序列化时不返回值为null的字段,二是...

idea字段按照字母顺序排序

idea自动排序,按照字母顺序排序字段。平时格式化快捷键是 ctrl + alt + L,默认情况下字段顺序是按照书写顺序的,但是想要他按照字母顺序排序如果做呢?1 首先找到设置中的排序设置部分2 双击这个 field private的选项,将排序设成by name3 按下快捷键ctrl + alt + shift + L ,弹出的窗口中勾选上排序4 这样下次排序时就会按照字母顺序排序了,且只对private 的字段生效,因为我们只设置了private 的字...

idea选中多列,多光标

有两个方法,一个是按住alt键,拖动鼠标,但是这种方法只能选中同一个矩形内的列。另一个方法是按住shift+alt,使用鼠标左键点击,这样可以在任意多个位置插入光标。

RequestBodyAdvice ResponseBodyAdvice

RequestBodyAdvice ResponseBodyAdvice增强类RequestBodyAdvice类和ResponseBodyAdvice是spring提供的接口,它可以在请求参数解析前,和响应输出前对controller的返回值进行拦截,替换。先看RequestBodyAdvice的Api,它可以在从流中读取参数前,读取参数后进行拦截11121314151617public interface Reque...

抽象内内部的静态类会被扫描到吗

1.抽象类内部的静态内部类会被spring扫描到吗?如下面的例子,B会被spring扫描到吗?public abstract class A { @Component public static class B{ }}答案是会的因为静态内部类在编译完成后会产生两个文件,spring扫描时是按照文件扫描的,所以写在抽象类内部的静态类会被扫描到。可以把静态内部类当成一个独立的类看待,和外部类没什么...

ControllerAdvice参数的作用

本文讲一讲ControllerAdvice注解的讲解首先看注解的定义1112131415161718@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Componentpublic @interface ControllerAdvice { @AliasFor("basePackages") String[] valu...

vscode按照字母顺序排序

vscode按照字母顺序排序接收到json文件,想找到某个字段不好找,所以需要排序下。 选中想要排序的行, ctrl + shift + p 选择按照降序排序