前言
在微服务架构中,能快速更新和迭代是其最大的特点之一,而在重启或更新的过程中,为了确保现有请求的完整性以及最小化对业务的影响,“优雅关闭”就显得十分重要了。
本文将结合源码一起来学习下在 Dubbo 中,“优雅关闭”是如何实现的。
在前面我们学习到 Kafka 生产者在发送时,消息会先流入到消息收集器 RecordAccumulator,随后再由另外的线程—— Sender 线程将累积的消息发往 Kafka 服务端。本篇文章一起学习下 Sender 线程的工作流程。
Sender 线程的启动可以在 KafkaProducer 的构造函数中找到:
1 | //... |
我们都知道,在使用 Kakfa 客户端发送消息时,只需要指定主题和消息的内容,再调用发送方法即可。那发送方法中具体包含了哪些逻辑呢,本文结合源码一起来看下。
1 | // 构建消息 |
在 Spring Boot/Cloud 中,配置是应用环境的一部分,而环境有一个专属的类 —— “Environment”。
Environment 是 Spring 对环境的抽象,它封装了应用运行时的所有配置属性,这些属性可以来自不同的来源,如本地配置文件、系统属性、环境变量、命令行参数、配置中心等,而 Environment 则提供了一个统一的接口来访问这些属性。
那这些不同来源的配置文件是如何加载并生效的呢?本文一起来看看。