摘要: 在 Go 语言中,map 的 for range 遍历顺序是随机的,这是由于其底层哈希表实现和遍历时的随机起始位置设计决定的。若需要实现有序遍历,需通过手动处理键值对的排序逻辑。以下是具体实现方法及原理说明: 一、map 无序的根本原因 哈希表结构:map 的底层实现是哈希表,插入数据时通过哈希函数 阅读全文
posted @ 2025-04-15 16:32 惜阳茕影 阅读(159) 评论(0) 推荐(0)
摘要: 在 Go 语言中,make([]string, 0, len(defaultProperties)) 和 make([]string, len(defaultProperties)) 是两种不同的切片初始化方式,核心区别在于 初始长度 和 容量分配策略。以下是具体对比: 一、语法与参数含义 表达式 阅读全文
posted @ 2025-04-15 16:28 惜阳茕影 阅读(67) 评论(0) 推荐(0)
摘要: org.springframework.boot.context.config.ConfigDataLoader 类确实会在 Spring Boot 应用主逻辑启动前加载,其核心作用阶段是 环境准备(Environment Preparation),属于 Spring Boot 启动流程中最早处理配 阅读全文
posted @ 2025-03-31 16:30 惜阳茕影 阅读(103) 评论(0) 推荐(0)
摘要: AutoConfiguration.imports 与 SpringFactoriesLoader 的对比分析 **1. 核心设计差异 文件结构与内容 SpringFactoriesLoader(基于 spring.factories) 文件路径为 META-INF/spring.factories 阅读全文
posted @ 2025-03-28 10:54 惜阳茕影 阅读(102) 评论(0) 推荐(0)
摘要: 在 Spring Boot 的启动流程中,org.springframework.boot.context.config 和 org.springframework.boot.env 相关组件的执行顺序是由 框架核心设计逻辑 和 配置加载阶段的分层职责 决定的。以下是具体原因分析: 一、框架启动流程 阅读全文
posted @ 2025-03-27 14:58 惜阳茕影 阅读(104) 评论(0) 推荐(0)
摘要: 安装 # 下载 Consul wget https://releases.hashicorp.com/consul/1.10.4/consul_1.10.4_linux_amd64.zip # 解压文件 unzip consul_1.10.4_linux_amd64.zip # 移动 Consul 阅读全文
posted @ 2025-03-20 11:02 惜阳茕影 阅读(84) 评论(0) 推荐(0)
摘要: Ref resilience4j Sentinel 阅读全文
posted @ 2025-03-19 20:22 惜阳茕影 阅读(6) 评论(0) 推荐(0)
摘要: 1 Spring Cloud Config Data Spring Cloud Config 是一个用于分布式系统的配置管理解决方案,它提供了一个集中式的配置服务器(Config Server)和客户端(Config Client),用于管理和获取应用程序的配置数据。以下是对 Spring Clou 阅读全文
posted @ 2025-03-18 11:21 惜阳茕影 阅读(315) 评论(0) 推荐(0)
摘要: ASM ASM 是一个低级别的 Java字节码操作库,功能强大但API相对复杂。它允许开发者以最细粒度的方式操作字节码。 ASM的特点: 高效:直接操作字节码,性能极高。 灵活:支持复杂的字节码修改和生成。 广泛应用:被许多其他字节码库和框架所使用,如ByteBuddy、CGLIB等。 javass 阅读全文
posted @ 2025-03-06 11:37 惜阳茕影 阅读(25) 评论(0) 推荐(0)
摘要: 静态加载 通过VM启动参数-javaagent将agent的jar包挂载到目标JVM程序,和目标程序一起启动。 启动参数 "-javaagent:[=]"。[=]部分可以指定 agent 的参数,可以传递到premain(String agentArgs, Instrumentation inst) 阅读全文
posted @ 2025-03-05 17:39 惜阳茕影 阅读(52) 评论(0) 推荐(0)