<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[xzh_blog]]></title><description><![CDATA[哦~ 慢慢清晰]]></description><link>https://blog.youkuaiyun.com/Anenan</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Anenan]]></copyright><item><title><![CDATA[http请求访问响应慢问题解决的基本思路]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/149833507</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/149833507</guid><author>Anenan</author><pubDate>Fri, 01 Aug 2025 14:33:35 +0800</pubDate><description><![CDATA[摘要：排查HTTP响应慢问题需分四步：1.明确问题现象，收集请求耗时、慢接口等基础信息；2.分层定位瓶颈，从客户端、网络、服务器、应用、数据库和缓存六个层面逐层分析；3.针对已定位问题优化，如升级TLS、扩容硬件、优化SQL等；4.验证优化效果并持续监控。关键在于通过全链路追踪工具量化各环节耗时，针对性解决主要瓶颈。]]></description><category></category></item><item><title><![CDATA[Redis 配置多个 database 数据源]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/147513261</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/147513261</guid><author>Anenan</author><pubDate>Fri, 25 Apr 2025 15:02:42 +0800</pubDate><description><![CDATA[【代码】Redis 配置多个 database 数据源。]]></description><category></category></item><item><title><![CDATA[Spring Cloud FeignClient 服务降级未触发 FallbackFactory]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/147138754</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/147138754</guid><author>Anenan</author><pubDate>Wed, 16 Apr 2025 11:22:59 +0800</pubDate><description><![CDATA[3. FallbackFactory 需正确注入，FallbackFactory 实现类需被 Spring 管理添加 @Component。2. @FeignClient 中需指定 fallbackFactory 属性。1. 引用断路器maven包，在配置文件中启用熔断器。]]></description><category></category></item><item><title><![CDATA[maven 依赖的优先级]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/147143403</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/147143403</guid><author>Anenan</author><pubDate>Fri, 11 Apr 2025 14:32:21 +0800</pubDate><description><![CDATA[工程中依赖了a、b两个jar包，在a jar包内引用了b jar包版本为1.0，路径为：Project > a > b(1.0)工程中直接依赖的b jar包版本为2.0，路径为：Project > b(2.0)由于b(2.0)路径最短，所以项目使用的是b(2.0)。]]></description><category></category></item><item><title><![CDATA[Spring Cloud ReactorServiceInstanceLoadBalancer 自定义负载均衡]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/146605402</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/146605402</guid><author>Anenan</author><pubDate>Fri, 28 Mar 2025 16:55:20 +0800</pubDate><description><![CDATA[然后在启动类加上注解，多个微服务在数组继续添加@LoadBalancerClient。]]></description><category></category></item><item><title><![CDATA[idea设置全局maven配置 对新建项目生效]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/146602230</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/146602230</guid><author>Anenan</author><pubDate>Fri, 28 Mar 2025 15:09:09 +0800</pubDate><description><![CDATA[File -> New Projects Setup -> Settings for New Projects]]></description><category></category></item><item><title><![CDATA[正则表达式规则 常用正则表达式举例]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/140429888</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/140429888</guid><author>Anenan</author><pubDate>Mon, 15 Jul 2024 10:03:41 +0800</pubDate><description><![CDATA[基本字符(Basic)字符类(Character Class)量词(Quantifiers)定位符(Anchors)贪婪(Greedy)和懒惰(Lazy)旗标(Flags)分组和引用(Groups)前瞻(Lookahead)后顾(Lookbehind)]]></description><category></category></item><item><title><![CDATA[线程池中异常处理，解决多线程异常丢失问题]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/134571554</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/134571554</guid><author>Anenan</author><pubDate>Thu, 23 Nov 2023 10:50:56 +0800</pubDate><description><![CDATA[线程池的提交方式有submit和executeexecute没有返回值，并且会打印异常信息或者使用try-catchsubmit源码在底层还是调用的execute方法，只不过多一层future封装，future里面的run方法try-catch了所有的异常，通过setException(ex)方法设置到了变量outcome里面， 可以通过future.get获取到outcome。]]></description><category></category></item><item><title><![CDATA[Java 并发包 park/unpark原理]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/134438305</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/134438305</guid><author>Anenan</author><pubDate>Thu, 16 Nov 2023 13:51:47 +0800</pubDate><description><![CDATA[park(Object blocker) 和 unpark(Thread thread) 方法位于Java 并发包下的 java.util.concurrent.locks.LockSupport 类，本质上是对 Unsafe 的park/unpark 方法的简单封装，它是 Lock（AQS）的基石，给 Lock（AQS）提供了挂起/恢复当前线程的能力。]]></description><category></category></item><item><title><![CDATA[Spring @Value注解读取yml配置文件中的list和map]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/134240552</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/134240552</guid><author>Anenan</author><pubDate>Mon, 06 Nov 2023 10:22:58 +0800</pubDate><description><![CDATA[myConfig:
    userList: 张三,李四
    userMap: '{"张三":"10","李四":"20"}']]></description><category></category></item><item><title><![CDATA[使用Hystrix实现请求合并，降低服务器并发压力]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/134060235</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/134060235</guid><author>Anenan</author><pubDate>Thu, 26 Oct 2023 18:31:54 +0800</pubDate><description><![CDATA[batchMethod，请求合并方法
scope，请求合并方式，REQUEST:请求范围，GLOBAL:全局范围，默认com.netflix.hystrix.HystrixCollapser.Scope.GLOBAL
MAX_REQUESTS_IN_BATCH 最大请求合并数量，默认Integer.MAX_VALUE
TIMER_DELAY_IN_MILLISECONDS 请求合并间隔毫秒值，默认10ms
注意，达到请求合并间隔毫秒值，没达到最大请求合并数量时，也会进行请求合并]]></description><category></category></item><item><title><![CDATA[MybatisPlus rewriteBatchedStatements=true 批量插入失效，依然是单条插入问题解决]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/133318981</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/133318981</guid><author>Anenan</author><pubDate>Tue, 26 Sep 2023 18:24:40 +0800</pubDate><description><![CDATA[默认情况下，MybatisPlus的批量插入saveBatch方法实际上是for循环单条插入。如果想要实现真实的批量插入，需要在spring.datasource.url配置中加。]]></description><category></category></item><item><title><![CDATA[ClientAbortException: java.io.IOException: Connection reset by peer、Connection reset]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/132016333</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/132016333</guid><author>Anenan</author><pubDate>Mon, 31 Jul 2023 10:05:38 +0800</pubDate><description><![CDATA[如果客户端或服务器一端的 Socket 被关闭，另一端仍发送数据，发送的第一个数据包会引发异常：Connect reset by peer。
还有一种情况，如果一端发送RST数据包中断了TCP连接，另外一端也会出现这个异常：Connection reset by peer。]]></description><category></category></item><item><title><![CDATA[@Async 使用自定义线程池]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/131890775</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/131890775</guid><author>Anenan</author><pubDate>Mon, 24 Jul 2023 10:29:37 +0800</pubDate><description><![CDATA[@Async 注解的默认的线程池的核心线程数是8 ，工作队列长度是Integer.MAX_VALUE。
如果直接使用默认的线程池有内存溢出的风险。]]></description><category></category></item><item><title><![CDATA[idea git 将代码推送到另外一个仓库]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/131783650</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/131783650</guid><author>Anenan</author><pubDate>Tue, 18 Jul 2023 11:48:14 +0800</pubDate><description><![CDATA[修改 Git Remotes，然后 Push 代码到远程仓库 ]]></description><category></category></item><item><title><![CDATA[cron表达式 字符含义 详细解释]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/131280978</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/131280978</guid><author>Anenan</author><pubDate>Mon, 19 Jun 2023 11:17:51 +0800</pubDate><description><![CDATA[cron表达式是一个字符串，由6到7个字段组成，用空格分隔。其中前6个字段是必须的，最后一个是可选的。]]></description><category></category></item><item><title><![CDATA[Java CAS和AQS的实现原理]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/130845749</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/130845749</guid><author>Anenan</author><pubDate>Wed, 24 May 2023 14:05:58 +0800</pubDate><description><![CDATA[CAS（Compare And Swap）是一种并发控制机制，用于解决多线程并发访问共享资源时的数据一致性问题。在Java中，CAS操作通常使用Atomic类来实现。例如，可以使用java.util.concurrent.atomic.AtomicInteger类来实现对整数类型的原子操作。Atomic类提供了一系列的原子操作方法，例如getAndAdd、getAndSet、compareAndSet等，可以用于实现CAS操作。/***/]]></description><category></category></item><item><title><![CDATA[idea插件 Bito – GPT-4 & ChatGPT AI写代码 分析代码 生成测试用例]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/130378753</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/130378753</guid><author>Anenan</author><pubDate>Wed, 26 Apr 2023 09:50:29 +0800</pubDate><description><![CDATA[Bito官网 https://bito.ai/Bito AI是一款通用的人工智能辅助工具，基于最新的ChatGPT实现，开发者可以提出任何技术问题，根据自然语言提示生成代码。Bito AI可以用于编写代码、理解语法、编写测试用例、分析解释代码、注释代码、检查安全性，甚至解释高级概念。]]></description><category></category></item><item><title><![CDATA[MySQL InnoDB 为什么使用B+树作为索引结构]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/130363800</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/130363800</guid><author>Anenan</author><pubDate>Tue, 25 Apr 2023 14:13:47 +0800</pubDate><description><![CDATA[使用B+树作为索引结构可以提高查询效率和覆盖度，减少回表操作，支持高效的范围查询。]]></description><category></category></item><item><title><![CDATA[MySQL索引合并Index Merge 一条SQL使用多个索引情况分析，以及索引合并失效情况]]></title><link>https://blog.youkuaiyun.com/Anenan/article/details/130320519</link><guid>https://blog.youkuaiyun.com/Anenan/article/details/130320519</guid><author>Anenan</author><pubDate>Sun, 23 Apr 2023 14:47:16 +0800</pubDate><description><![CDATA[MySQL在5.0版本加入了索引合并优化（Index Merge），索引合并可以同时查询多个索引的范围扫描，并将其结果合并为一个。索引合并只可以合并来自单个表的索引扫描，而不支持跨多个表的扫描。合并可以生成其基础扫描的并集（unions）、交集（intersections）或交集的并集（unions-of-intersections）。]]></description><category></category></item></channel></rss>