当前位置: 首页 > news >正文

未解决|TransmittableThreadLocal 怎么用| 阿里线程池工具避免手动在传递MDC traceId

traceId的实现方式除了slf4j的MDC,还有阿里开源的工具TransmittableThreadLocal,一个增强版本的ThreadLocal【还没实践过,暂时挖个坑】

在阿里巴巴的技术栈中,确实有解决方案可以避免手动通过MDC(Mapped Diagnostic Context)传递traceId。主要有以下几种方式:

  1. TTL (TransmittableThreadLocal) + 线程池包装
    阿里巴巴开源的TransmittableThreadLocal(TTL)可以解决线程池场景下的上下文传递问题。

使用方式:

// 创建线程池
ExecutorService executorService = Executors.newCachedThreadPool();
// 使用TtlExecutors包装
executorService = TtlExecutors.getTtlExecutorService(executorService);// 提交任务
executorService.execute(() -> {// 这里可以自动获取到父线程的MDC上下文String traceId = MDC.get("traceId");
});
http://www.dtcms.com/a/318345.html

相关文章:

  • 数字取证和网络安全:了解两者的交叉点和重要性
  • 《爬虫实战指南:轻松获取店铺详情,开启数据挖掘之旅》
  • 【网络基础】计算机网络发展背景及传输数据过程介绍
  • cad c#二次开发 图层封装 获取当前层
  • 《第十一篇》深入解析 `embedding.py`:基于 SiliconFlow API 的文本向量化服务
  • 《算法导论》笔记——归并排序及循环不变式证明
  • [AI 生成] 大数据数仓面试题
  • 无人机共轴双桨动力测试-如何确认桨叶最优间距(效率/噪音/重量/尺寸)
  • 无人机航拍数据集|第3期 无人机军事目标目标检测YOLO数据集3556张yolov11/yolov8/yolov5可训练
  • 2025年高防IP隐身术:四层架构拆解源站IP“消失之谜”
  • 笔试——Day30
  • 吴声 2025 年度演讲:“场景革命十年”的多面审视,理念重复之嫌!
  • 笔记html模板
  • OpenHarmony源码解析之init进程
  • 题解:CF1453D Checkpoints
  • 看不见的伪造痕迹:AI时代的鉴伪攻防战
  • 微信小程序多媒体功能实现
  • n8n循环处理完全指南
  • 工业自动化中Modbus RTU转Profibus DP网关的应用与温度监控实现
  • 昇思+昇腾开发板:DeepSeek-R1-Distill-Qwen-1.5B 模型推理部署与 JIT 优化实践
  • spring i18n 词条英文下格式化占位符不生效 问题排查处理
  • Kafka 重平衡(Rebalance)机制
  • UniStorm 5.3.0 + Unity2022 + URP配置说明
  • 机器学习概述
  • 微调训练时,ignore_empty_think是怎么保护模型的思考能力?
  • 自然语言处理的相关概念与问题
  • Redis面试精讲 Day 12:Redis Sentinel哨兵机制详解
  • 非机动车识别mAP↑28%!陌讯多模态融合算法在智慧交通的实战解析
  • PyTorch生成式人工智能——Hugging Face环境配置与应用详解
  • leetcode 3479. 水果成篮 III 中等