个人简介

Echo Blog


江湖无名 安心练剑
  • 复制修改项目好,还是打包为公共的 jar 更好?
    背景 针对旧项目的改造。 test-service test-integration test-util 依赖关系如下: +-----------------+ | test-service | +--------+--------+ | v +-----------------+ | test-integration| +--------...
    2025-09-26 12:40:12 | Java
  • dubbo 的超时 bug 踩坑及回顾
    背景 产线上面很多外部接口的调用,希望指定超时时间。按时返回,但是发现竟然踩坑了。 最核心的原因的是 dubbo 的底层 bug,但是最大的问题还是在于测试用例覆盖不够完全。 我们来简单复现一下这个问题 基础版本 maven 依赖 <dependency> <groupId>com.alibaba</groupId> <a...
    2025-09-26 12:40:12 | Java
  • spring 项目 bean 直接 maven 打包,另一个项目如何正常使用?
    背景 假设我们有一个 service 模块,但是希望被 2 个不同的项目依赖。 这个 service 实现比较复杂,各种 spring bean 注入之类的。 又应该如何正常使用呢? 本文演示一下。 模块 springboot-invoke-service-noauto 说明 模拟一个普通的服务类 pom.xml <?xml version="1.0" encodin...
    2025-09-16 12:40:12 | AI
  • AI 大模型 MCP 介绍与从零实现实战
    MCP 实战之前,先简单介绍一下 MCP。 MCP = Model Context Protocol,是 OpenAI 在 2024 年底提出的一种协议,用于让大模型(LLM,比如 ChatGPT)能够和外部系统(数据库、API、工具、文件系统等)进行交互。 MCP 是什么? MCP 就是 一个大模型和外部工具之间的“通用桥梁”协议。 过去的做法: 如果要让 LLM...
    2025-09-16 12:40:12 | AI
  • 项目实战取舍:已有项目的拆分和复用的问题
    背景 已有的一个 service 服务,虽然提供了 rpc 服务,但是是业务核心。 为了避免影响,batch 跑批服务希望把当用的 rpc 服务部分本地化,避免远程调用损耗+影响业务。 但是要如何是如何实现这个拆分呢? 方案1-直接 copy 方式:直接把 rpc 从头到尾复制一遍到 batch。 优点:service 无影响,不需要回归验证。 缺点:需要拷贝的地方比较多,且后...
    2025-09-16 12:40:12 | AI
  • v0.29.3 敏感词性能优化之繁简体转换 opencc4j 优化
    敏感词性能调优系列 v0.29.0 敏感词性能优化提升 14 倍全过程 v0.29.1 敏感词性能优化之内部类+迭代器内部类 v0.29.2 敏感词性能优化之基本类型拆箱、装箱的进一步优化的尝试 v0.29.3 敏感词性能优化之繁简体转换 opencc4j 优化 背景 opencc4j opencc4j 中,因为考虑到汉字的复杂性,可能存在繁简体的多个对应和一个汉字,多个 ch...
    2025-09-05 12:40:12 | Java
  • v0.29.2 敏感词性能优化之基本类型拆箱、装箱的进一步优化的尝试
    敏感词性能调优系列 v0.29.0 敏感词性能优化提升 14 倍全过程 v0.29.1 敏感词性能优化之内部类+迭代器内部类 v0.29.2 敏感词性能优化之基本类型拆箱、装箱的进一步优化的尝试 v0.29.3 敏感词性能优化之繁简体转换 opencc4j 优化 背景 java 的装箱、拆箱 自动装箱/拆箱大家应该都知道,这个一般而言不是什么大问题。 不过作为一个底层框架,有...
    2025-09-05 12:40:12 | Java
  • v0.29.1 敏感词性能优化之内部类+迭代器内部类
    敏感词性能调优系列 v0.29.0 敏感词性能优化提升 14 倍全过程 v0.29.1 敏感词性能优化之内部类+迭代器内部类 v0.29.2 敏感词性能优化之基本类型拆箱、装箱的进一步优化的尝试 v0.29.3 敏感词性能优化之繁简体转换 opencc4j 优化 背景 压测时发现 init 内部类,和默认的 for 循环迭代器其实还是会造成额外的性能开销。 所以进一步优化。 ...
    2025-09-05 12:40:12 | Java