摘要:Spring 是一个一站式的 Java 框架,致力于提高我们项目开发的效率。通过 Spring,我们可以避免编写大量额外代码,更专注于我们的核心逻辑。目前,Spring 已经成为最受欢迎的 Java 框架。 Spring 的全家桶包含非常多的项目,而且还在不断增加,但我们可以发现,最核心的就是 spring-bean 和 spring-aop,其他大部分都是基于这两个项目而来。本系列将重点分析这两个项目,其他项目的内容后续也会增加。 阅读全文
posted @ 2020-10-12 15:56 子月生 阅读(245) 评论(0) 推荐(0) 编辑
摘要:本文将包含以下内容(因为篇幅较长,可根据需要选择阅读): 1. 如何使用 HikariCP(入门、JMX 等) 2. 配置参数详解 3. 源码分析 阅读全文
posted @ 2020-02-19 09:59 子月生 阅读(3050) 评论(0) 推荐(3) 编辑
摘要:Feign 是由 Netflix 团队开发的一款基于 Java 实现的 HTTP client,借鉴了 Retrofit、 JAXRS-2.0、WebSocket 等类库。通过 Feign,我们可以像调用方法一样非常简单地访问 HTTP API。这篇博客将介绍如何使用原生的 Feign,注意,是原生的,不是经过 Spring 层层封装的 Feign。 阅读全文
posted @ 2021-07-09 09:49 子月生 阅读(253) 评论(2) 推荐(0) 编辑
摘要:最近,我改造一个旧接口时发现,这个接口有 30 多个入参,而事实上并不需要那么多,而且,这个接口还存在比较大的安全隐患。所以,关于如何设计接口入参,我想谈谈自己的一些想法。 当然,只是一家之言,不一定就是对的。 阅读全文
posted @ 2021-07-04 10:27 子月生 阅读(363) 评论(3) 推荐(0) 编辑
摘要:apollo 是一款由携程团队开发的配置中心,可以实现配置的集中管理、分环境管理、即时生效等等。在这篇博客中,我们可以了解到: 1. 为什么使用配置中心 2. 如何设计一个配置中心 3. apollo 是如何设计的 4. 如何使用 apollo 阅读全文
posted @ 2021-06-22 14:56 子月生 阅读(357) 评论(1) 推荐(0) 编辑
摘要:业务系统是千差万别的,例如,保存、更新和删除订单,或者保存订单和保存客户,走的根本不是一个流程。但是,它们还是有共同点,它们的流程大致可以分成下面的几个部分。 拿到增删改等操作所需的基础数据;初始化基础数据; 对基础数据进行校验;利用基础数据,构建出要进行增删改等操作的对象;持久化或其他操作。而entitybuilder就是来规范和简化这个过程的工具。 阅读全文
posted @ 2021-03-03 10:04 子月生 阅读(438) 评论(2) 推荐(0) 编辑
摘要:eureka 是由 Netflix 团队开发的针对中间层服务的负载均衡器,在微服务项目中被广泛使用。相比 SLB、ALB 等负载均衡器,eureka 的服务注册是无状态的,扩展起来非常方便。 在这个系列中,我将深入研究 eureka,包括它的使用、源码等,总计分成五篇博客讲完,后面发现有趣的东西也会继续补充。 阅读全文
posted @ 2021-02-10 10:59 子月生 阅读(76) 评论(0) 推荐(0) 编辑
摘要:按照原定的计划,我将分三个部分来分析 Eureka 的源码: 1. Eureka 的配置体系; 2. Eureka Client 的交互行为; 3. Eureka Server 的交互行为。 今天,我们来研究第三部分的源码。 分析的思路和第二部分的一样,先明确 Eureka Server 需要具备哪些功能,再从源码层面分析如何实现这些功能,最后补充 Eureka Server 的配置解读。 阅读全文
posted @ 2021-02-10 10:36 子月生 阅读(204) 评论(0) 推荐(0) 编辑
摘要:按照原定的计划,我将分三个部分来分析 Eureka 的源码: 1. Eureka 的配置体系; 2. Eureka Client 的交互行为; 3. Eureka Server 的交互行为。 今天,我们来研究第二部分的源码。 阅读全文
posted @ 2021-02-06 12:40 子月生 阅读(223) 评论(0) 推荐(0) 编辑
摘要:通过前面的两篇博客,我们知道了:什么是 Eureka?为什么使用 Eureka?如何适用 Eureka?今天,我们开始来研究 Eureka 的源码,先从配置部分的源码开始看,其他部分后面再补充。 补充一点,我更多地会从设计层面分析源码,而不会顺序地剖析每个过程的代码。一方面是因为篇幅有限,另一方面是因为我认为这样做更有意义一些。 阅读全文
posted @ 2021-02-04 17:39 子月生 阅读(435) 评论(0) 推荐(0) 编辑
摘要:通过上一篇博客,我们知道了 Eureka 是什么以及为什么要使用它,今天,我们开始研究如何使用 Eureka。 在此之前,先说明一点。网上几乎所有关于 Eureka 的文章都是基于 Spring 的,但**本文的例子不会有任何 Spring 的代码,我尽量使用 Eureka 原生的 API**,后面的源码分析也是如此。因为 Spring 把 Eureka 藏得越好,我们研究起来就会越困难,毕竟我写这个系列不是只为了学会怎么使用 Eureka,我们还要分析它的源码。当然,实际项目中就没必要这么搞了。 阅读全文
posted @ 2021-01-28 09:07 子月生 阅读(422) 评论(0) 推荐(1) 编辑
摘要:这个系列开始研究 Eureka,在此之前,先来谈谈负载均衡器。 本质上,Eureka 就是一个负载均衡器,可能有的人会说,它是一个服务注册中心,用来注册服务的,这种说法不能说错,只是有点片面。 在这篇博客里,我将尽可能循序渐进、图文并茂地回答下面的几个问题。至于 Eureka 的使用、配置、源码分析、集群配置等等,这些后续博客再补充。 阅读全文
posted @ 2021-01-22 14:19 子月生 阅读(692) 评论(2) 推荐(6) 编辑