分布式日志追踪ID实战
作者:京东物流 张小龙本文通过介绍分布式应用下各个场景的全局日志ID透传思路,以及介绍分布式日志追踪ID简单实现原理和实战效果,从而达到通过提高日志查询排查问题的效率。背景开发排查系统问题用得最多的手段就是查看系统日志,相信不少人都值过班当过小秘吧:给下接口和出入参吧,麻烦看看日志里的有没有异常信息啊等等,但是在并发大时使用日志定位问题还是比较麻烦,由于大量的其他用户/其他线程的日志也一起输出穿行
大数据平台Bug Bash大扫除最佳实践
作者:尹伟一、背景随着越来越多的"新人"在日常工作以及大促备战中担当大任,我们发现仅了解自身系统业务已不能满足日常系统开发运维需求。为此,大数据平台部门组织了一次Bug Bash活动,既能提升自己对兄弟产品的理解和使用,又能促使自家产品功能日趋完善。今天来给大家分享一些实际操作过程和经验总结~二、什么是Bug Bash?Bug Bash,顾名思义就是缺陷大扫除。通常由QA主导发
Seata 源码
作者:京东物流 张士欣核心接口和类ResourceManagerResourceManager 是 seata 的重要组件之一,RM 负责管理分支数据资源的事务。AbstractResourceManager 实现 ResourceManager 提供模板方法。DefaultResourceManager 适配所有的 ResourceManager,所有方法调用都委派给对应负责的 R
大数据平台Bug Bash大扫除最佳实践
作者:尹伟一、背景随着越来越多的"新人"在日常工作以及大促备战中担当大任,我们发现仅了解自身系统业务已不能满足日常系统开发运维需求。为此,大数据平台部门组织了一次Bug Bash活动,既能提升自己对兄弟产品的理解和使用,又能促使自家产品功能日趋完善。今天来给大家分享一些实际操作过程和经验总结~二、什么是Bug Bash?Bug Bash,顾名思义就是缺陷大扫除。通常由QA主导发
分布式日志追踪ID实战
作者:京东物流 张小龙本文通过介绍分布式应用下各个场景的全局日志ID透传思路,以及介绍分布式日志追踪ID简单实现原理和实战效果,从而达到通过提高日志查询排查问题的效率。背景开发排查系统问题用得最多的手段就是查看系统日志,相信不少人都值过班当过小秘吧:给下接口和出入参吧,麻烦看看日志里的有没有异常信息啊等等,但是在并发大时使用日志定位问题还是比较麻烦,由于大量的其他用户/其他线程的日志也一起输出穿行
Code Review:提升代码质量与团队能力的利器
作者:京东物流 韩旭1. 引言Code Review(下文简称CR),即代码审查,是一种通过评审代码以发现并修正错误的实践。它不是一个新概念,但在软件开发中,它的重要性毋庸置疑。首先,它可以显著降低软件中的缺陷比例;其次,它促进了知识共享,通过评审的过程,团队成员可以相互学习,增强对系统的整体理解;最后,CR是一种预防措施,它有助于维护代码的清晰和统一,减轻技术债务,提升系统的稳定性。尽管CR
Linux内存泄露案例分析和内存管理分享
作者:京东科技 李遵举一、问题近期我们运维同事接到线上LB(负载均衡)服务内存报警,运维同事反馈说LB集群有部分机器的内存使用率超过80%,有的甚至超过90%,而且内存使用率还再不停的增长。接到内存报警的消息,让整个团队都比较紧张,我们团队负责的LB服务是零售、物流、科技等业务服务的流量入口,承接上万个服务的流量转发,一旦有故障影响业务服务比较多,必须马上着手解决内存暴涨的问题。目前只是内存报警,
一文让你对mysql索引底层实现明明白白
作者:京东零售 韩航云开篇:图片是本人随笔画的,有点粗糙,望大家谅解,如有不对的地方,请联系本人,感谢一、索引到底底是什么.索引是帮助mysql高效获取数据的排好序的数据结构.索引是存储在文件里的.数据结构: 二叉树 HASH BTREE如果没有索引的话,循环一条一条的找,找一次就是一次IO,这样速度就会很慢我们知道数据库数据都是存在磁盘上的,当我们查找数据时,就会从磁盘上取数据,每取一次就
稳定性方法论:可灰度 & 可监控 & 可回滚
作者:京东物流 郑传洲业务系统核心目标是挣钱,系统稳定性建设核心是防止丢钱(丢钱逻辑如下图所示),站在公司的角度看,产品功能建设和系统稳定性是同等重要。前段时间写了《 稳定性治理框架 》,该文章在稳定性建设的理论和实践基础上,抽象出稳定性治理的框架,希望建立一个稳定性治理的标准动作、最佳实践。但从读者的反馈上看,有过类似经验的同学深同感触,经验不足的同学没啥感觉,导致这个结果
2024 京东零售技术年度总结
作者:京东零售 零售技术每一次回望,都为了更好地前行。2024年,京东零售技术在全面助力业务发展的同时,在大模型应用、智能供应链、端技术、XR体验等多个方向深入探索。京东APP完成阶段性重要改版,打造“又好又便宜”的优质体验;国补专区快速上线、助力“以旧换新”;大模型应用在大量零售业务场景全面铺开,实现效率提升;供应链能力一骑绝尘,为超千万订单提供更快的履约时效……对技术精益求精的执着背后,是为未
前端怎么做好稳定性保障体系建设?精准搞定“白虎”,不用叫“广智”!
作者:京东零售 刘伟东前言背景:实话实说才能做的更好1.业务间的监控策略层次不齐:前后端针对监控专项的标准规范缺失,导致有的业务监控完善,其他业务缺复用不了2.集团前端监控平台能力不完善,导致告警噪音大,一线研发无法通过自行思考抽丝剥茧,做有效合理监控,久而久之,监控告警熟视无睹3.平台大盘能力、日志能力和告警能力均欠佳,与业界差距较大,无法对已有的监控策略形成体系的工具价值4.前端监
HBase深度历险
作者:京东物流 于建飞简介HBase 的全称是 Hadoop Database,是一个分布式的,可扩展,面向列簇的数据库,是一个通过大量廉价的机器解决海量数据的高速存储和读取的分布式数据库解决方案。本文会像剥洋葱一样,层层剥开她的心,直到一丝不挂。特点首先我们看一下hbase有哪些特点:•高性能基于LSM树的数据结构设计,保证了顺序写,并且通过布隆过滤器,compaction等内部优化手段
记录一次RPC服务有损上线的分析过程
作者:京东零售 郭宏宇1. 问题背景某应用在启动完提供JSF服务后,短时间内出现了大量的空指针异常。分析日志,发现是服务依赖的藏经阁配置数据未加载完成导致。即所谓的有损上线或者是直接发布,当****应用启动时,service还没加载完,就开始对外提供服务,导致失败调用。关键代码如下数据的初始化加载是通过实现CommandLineRunner接口完成的@Componentpublic cl
反向 Debug 了解一下?揭秘 Java DEBUG 的基本原理
作者:保险业务部 蒋信点赞再看,养成习惯Debug 的时候,都遇到过手速太快,直接跳过了自己想调试的方法、代码的时候吧……一旦跳过,可能就得重新执行一遍,准备数据、重新启动可能几分钟就过去了。好在IDE 们都很强大,还给你后悔的机会,可以直接删除某个 Stack Frame,直接返回到之前的状态,确切的说是返回到之前的某个 Stack Frame,从而实现让程序“逆向运行”。这个 Reset Fr
京东广告生成式召回基于 NVIDIA TensorRT-LLM 的推理加速实践
作者:京东零售 陈航0000 生成式推荐系统优势介绍推荐系统的主要任务是根据用户的历史行为预测其兴趣点,并向其推荐相应的商品。传统的推荐系统在处理用户请求时,会触发多个召回模块(包括热门商品召回、个性化召回、深度召回等),以召回大量候选商品。随后,系统通过相对简单的粗排模型对候选集进行初步筛选,缩小候选范围,最后通过精排和重排模型,确定最终返回给用户的推荐结果。随着大语言模型(LLM)在推荐系统中
Java定时任务大盘点:发工资也能“指日可待”
作者:京东保险 孙昊宇引子:“指日可待”让我们先从一个成语开始,“指日可待”。没错,我说的就是定时任务😏。“指日可待”: 为任务指定好日程,就可以安心等待任务执行。在实际场景中,我们往往需要在特定时间做某件事情,或以某个时间间隔重复某件事情,如定期备份数据、定时取消超时订单等。所有和时间有关的事情,都需要借助定时任务来完成。定时任务可分为两种:本地定时任务、 分布式定时任务。本地定时任务,即单
基于javaPoet的缓存key优化实践
作者:京东物流 方志民一. 背景在一次系统opsreview中,发现了一些服务配置了@Cacheable注解。@cacheable 来源于spring cache框架中,作用是使用aop的方式将数据库中的热数据缓存在redis/本地缓存中,代码如下:@Cacheable(value = { "per" }, key=
EasyExcel碰到问题记录
作者:京东工业 孙磊1、富文本中文字设置不同颜色和字体不生效 String stringCellValue = cell.getStringCellValue(); &n
Spring缓存注解浅析及实践
作者:京东物流 江兆晶一 背景缓存是我们日常开发常被使用的技术栈,一般用来降低数据库读取压力,提升系统查询性能。使用缓存的数据一般为不常变化且使用率很高的数据,比如:配置信息、商品信息、用户信息等。我们一般的做法:第一次从数据库中读取数据,然后放到缓存中并设置缓存超期时间,缓存超期之后再从数据库从新读取,如果涉及到更新和删除数据也要同步缓存,这样才能解决缓存数据一致性问题,但我们常规的做法一般是使
万字长文:京东保险供应链的前世今生
作者:京东保险 李赟跨入2025年的第一天,回顾牵头保险产品供应链系统建设的四个年头,4年间经历的林林总总,记录下从乱而无序到行业第一的发展历程,也为2025年开个好头。前文《【京东保险-技术平台部-平台研发部】一群AI卖保险的程序员》提到,供应链研发就是负责从保险公司进货,进货快是最核心的价值。区别于实体商品,保险产品作为一种虚拟商品,整个交易过程都需要与保险公司进行实时的交互,严格按照保险公司