Git多账号配置

网上有太多关于Git多账号配置的文章了,给我的感觉就是很乱,没有找到一篇可以收藏的,所以还是决定自己写一篇记录一下。

暂时记录我的使用情况,后续有补充或修改再更新。

Spring Cloud Config内存泄漏导致CPU100%问题排查

前段时间,作为工具人的我被要求排查某台服务器CPU 100%。当时听了内心狂喜,终于让我遇到CPU 100%问题了。但是,当时服务器着急重启,没有足够的时间给我排查问题,但是我还是在重启之前把堆Dump文件保存了下来。

这两天忙里偷闲就想着分析一下原因。

JMolecules究竟是啥,竟然Spring Data JDBC都为它单独给了example

前两天在选择Demo工程的框架的时候,选了从未用过的Spring Data JDBC。在官方给出的Examples里,发现有个单独的模块jmolecules-example

我感觉挺惊讶的,Spring官方竟然给一个在Github上star不超过400(截止到2021-4-22)的项目给了单独的使用示例。

但是,我看到这个项目的第一眼就star上了。用注解和接口表达领域驱动设计中的概念,实在是太coooool了。

所以,我就决定将这个示例jmolecules-example,clone下来研究一下。

博客自定义域名-为什么CNAME内容消失了

现象是这样的:在static目录下新建了一个CNAME文件,并填写了域名blog.l-qiang.xyz。但是,使用Git将更改push到Github之后,发现gh-pages分支下的CNAME的内容为blog.l-qiang.xyz竟然消失了!!!

Controller统一返回结果文件下载怎么处理?

我们经常会使用一个自定义的Controller返回结果Response,例如:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
public class Response<T> {

    private static final int SUCCESS = 0;
    private static final int ERROR = 1;

    private String message;
    private int code;
    private T data;

    public Response(String message, int code, T data) {
        this.message = message;
        this.code = code;
        this.data = data;
    }

    public static Response<Void> error(String msg) {
        return new Response<>(msg, ERROR, null);
    }

    public static <T> Response<T> success(T data) {
        return new Response<>("success", SUCCESS, data);
    }

    @JsonProperty
    public T data() {
        return this.data;
    }

    @JsonProperty
    public int code() {
        return this.code;
    }

    @JsonProperty
    public String message() {
        return this.message;
    }

    @JsonIgnore
    public boolean isFileData() {
        return data() instanceof FileData;
    }
}

但是,关于文件下载,我们一般就是在Controller修改HttpServletResponse或者使用ResponseEntity。如果,我不想在Controller中写这些,我想跟其他方法一样直接返回Response,那该怎么做呢?

Jenkins的Pipeline插件实践

在Jenkins的官方文档中,可以看到到处都是Pipeline的身影,而且文档多数内容都是讲Pipeline。由此可见,Pipeline非常重要,我愿称之为Jenkins的精髓。最重要的是,Pipeline还很好用。接下来,以一个多模块的Maven项目为例,记录一下我使用Pipeline的一些经验。