深入理解左倾红黑树 | 京东物流技术团队
平衡二叉搜索树平衡二叉搜索树(BalancedBinarySearchTree)的每个节点的左右子树高度差不超过1,它可以在O(logn)时间复杂度内完成插入、查找和删除操作,最早被提出的自平衡二叉搜索树是AVL树。AVL树在执行插入或删除操作后,会根据节
分布式日志追踪ID实战 | 京东物流技术团队
本文通过介绍分布式应用下各个场景的全局日志ID透传思路,以及介绍分布式日志追踪ID简单实现原理和实战效果,从而达到通过提高日志查询排查问题的效率。背景开发排查系统问题用得最多的手段就是查看系统日志,相信不少人都值过班当过小秘吧:给下接口和出入参吧,麻烦看看
深入理解经典红黑树 | 京东物流技术团队
本篇我们讲红黑树的经典实现,Java中对红黑树的实现便采用的是经典红黑树。前一篇文章我们介绍过左倾红黑树,它相对来说比较简单,需要大家看完上篇再来看这一篇,因为旋转等基础知识不会再本篇文章中赘述。本篇的大部分内容参考《算法导论》和Java实现红黑树的源码,
人人都是架构师-清晰架构 | 京东物流技术团队
前言了解清晰架构之前需要大家先熟悉以下常见架构方案:EBI架构(EntityBoundaryInteractorArchitecture)领域驱动设计(DomainDrivenDesign)端口与适配器架构(Ports&AdaptersArchitectu
探索大语言模型:理解Self Attention| 京东物流技术团队
一、背景知识在ChatGPT引发全球关注之后,学习和运用大型语言模型迅速成为了热门趋势。作为程序员,我们不仅要理解其表象,更要探究其背后的原理。究竟是什么使得ChatGPT能够实现如此卓越的问答性能?自注意力机制的巧妙融入无疑是关键因素之一。那么,自注意力
京东云开发者 京东云开发者
12个月前
Vite 的预构建原理与实践| 京东物流技术团队
Vite预构建的核心原理1.兼容性与性能的双重目标Vite的预构建旨在解决两个主要问题:兼容性和性能。对于兼容性,由于Vite在开发阶段将所有代码视为原生ES模块,因此需要将CommonJS或UMD格式的依赖转换为ESM格式。对于性能,Vite通过预构建将
京东云开发者 京东云开发者
6个月前
测试用例设计方法六脉神剑——第一剑:入门试招,等价边界初探
作者:京东物流陈雨婷1背景及问题G.J.Myers在中提出:测试是为了寻找错误而运行程序的过程,一个好的测试用例是指很可能找到迄今为止尚未发现的错误的测试,一个成功的测试是揭示了迄今为止尚未发现的错误的测试。对于新手来说,日常测试用例设计时,很少用到系统的
京东云开发者 京东云开发者
6个月前
简洁至上——探索产品与技术的优雅原则
作者:京东物流冯志文背景上周开发了一个需求,发现一个历史功能,从产品和技术代码的角度看,将简单的事情变得复杂。这一经历再次深化了我对一个核心理念的认识:简化复杂性是产品设计和软件开发中永恒的挑战。我们必须不断努力,将复杂的逻辑转化为直观、易用的用户功能,并
京东云开发者 京东云开发者
4个月前
MySQL存储引擎及索引简介
作者:京东物流樊芳渝一、引言在信息技术飞速发展的今天,数据库作为信息系统的核心组件,其性能和稳定性直接关系到整个系统的运行效率和用户体验。而MySQL,作为目前最流行的开源关系型数据库管理系统之一,凭借其强大的功能、灵活的扩展性和广泛的应用场景,早已成为众
京东云开发者 京东云开发者
4个月前
浅谈API错误码设计
作者:京东物流冯志文一、痛点你是否曾遇到过以下问题?1.API错误码形同虚设,无法提供有效帮助?2.API错误码文档晦涩难懂,别说其他团队,连团队内同事都看不明白?3.API错误码定义混乱,缺乏一致性?4.链路上的错误码信息无法正确传递?二、什么是错误码根