- 博客(2483)
- 收藏
- 关注
原创 日志框架简介-Slf4j+Logback入门实践
随着互联网和大数据的迅猛发展,分布式日志系统和日志分析系统已广泛应用,几乎所有应用程序都使用各种日志框架记录程序运行信息。因此,作为工程师,了解主流的日志记录框架非常重要。虽然应用程序的运行结果不受日志的有无影响,但没有日志的应用程序是不完整的,甚至可以说是有缺陷的。优秀的日志系统可以记录操作轨迹监控系统运行状态和解决系统故障。在上文中已经提及,目前常用的日志框架有 Log4j,Log4j 2,Commons Logging,Slf4j,Logback,JUL。
2025-04-30 16:42:52
629
原创 java浅拷贝BeanUtils.copyProperties引发的RPC异常
作者:吴义近期参与了一个攻坚项目,前期因为其他流程原因,测试时间已经耽搁了好几天了,本以为已经解决了卡点,后续流程应该顺顺利利的,没想到 人在地铁上,bug从咚咚来~没有任何修改的服务接口,抛出异常:java.lang.ClassCastException: java.util.HashMap cannot be cast to cn.xxx.xxx.xxx.xxx.BatchInfo1、作为资深写bug的老司机,第一感觉是传参的报文格式有问题了,可以通过模拟报文排查。于是乎,在群里圈了服务提供方同学B看下
2025-04-30 16:42:04
253
原创 大数据从业者必知必会的Hive SQL调优技巧
在HDFS中,每个小文件对象约占150字节的元数据空间,如果有大量的小文件存在,将会占用大量的内存资源。根据集群的配置和资源情况,合理调整Hive查询的并行度和资源分配,可以提高查询的并发性和整体性能。COUNT DISTINCT操作需要用一个Reduce Task来完成,这一个Reduce需要处理的数据量太大,就会导致整个Job很难完成,一般COUNT DISTINCT使用先GROUP BY再COUNT的方式替换,虽然会多用一个Job来完成,但在数据量大的情况下,这个绝对是值得的。
2025-04-30 16:37:59
625
原创 Taro on Harmony :助力业务高效开发纯血鸿蒙应用
Taro 是由京东发起并维护的开放式跨端跨框架解决方案,支持以 Web 的开发范式来实现小程序、H5、原生 APP 的跨端统一开发,从 18 年开源至今,在 GitHub 已累计获得 36,000+ Stars。
2025-04-29 16:18:37
746
原创 自己写插件-实现时间戳自由
根据这个小小的实例,可以掌握浏览器与插件信息传输以及使用的方式,非常适合想要写插件但不知道从何下手的uu。下一步则会优化一下页面交互和展示,比如增加复制按钮、美观性提升、以及在使用过程中发现的其他问题。如果有其他的想法欢迎交流。
2025-04-29 16:13:54
699
原创 【前瞻技术布局】打破“沙漏“现象→提高生成式搜索/推荐的上限
生成式搜索/推荐在搜索和推荐系统中已经成为一种创新的范式,它通过使用基于数值的标识符来提升效率和泛化能力。特别是在电子商务领域,像TIGER这样的方法使用基于残差量化的语义标识符(RQ-SID),表现出了很大的潜力。然而,RQ-SID面临一个被称为“沙漏”现象的问题,即中间码本令牌过于集中,限制了生成式搜索/推荐方法的全面发挥。本文通过研究发现,路径稀疏和长尾分布是造成这一问题的主要原因。我们通过一系列详细的实验和消融研究,分析了这些因素对码本利用率和数据分布的影响。
2025-04-27 11:00:19
1042
原创 秒送LBS场景下的C端SOA服务容灾建设之-数据备份篇
在面向服务的架构(SOA)系统中,容灾能力是保障系统稳定性的重要组成部分。通过引入多数据中心部署自动化故障转移、数据备份等技术手段,可以有效提升系统在面对突发灾难事件时的恢复能力。例如,采用主从复制和异地多活架构,可以确保在某个数据中心发生故障时,其他数据中心能够迅速接管业务,避免服务中断。此外,定期进行灾难恢复演练和系统压力测试,也是提高容灾能力的关键措施。通过这些手段,SOA系统能够在各种极端情况下保持高可用性和稳定性,从而为用户提供持续可靠的服务。今天重点聊一下LBS场景下的数据备份方案。
2025-04-25 10:54:08
647
原创 从 Java 到 Go:面向对象的巨人与云原生的轻骑兵
作者:京东科技 王奕龙Go 语言在 2009 年被 Google 推出,在创建之初便明确提出了“少即是多(Less is more)”的设计原则,强调“以工程效率为核心,用极简规则解决复杂问题”。它与 Java 语言生态不同,Go 通过编译为和在占据主导地位,它也是 Java 开发者探索云原生技术栈的关键补充。本文将对 Go 语言和 Java 语言在一些重要特性上进行对比,为 Java 开发者在阅读和学习 Go 语言相关技术时提供参考。
2025-04-25 10:49:47
632
原创 接单流程设计探索
组件通常被定义为规则执行的最小单元,我们最常见的是普通组件,也就是调用就执行,这是大部分系统目前都在使用的组件。其实在流程规则中,组件就像编译语言,还应该具备布尔组件、条件组件、循环组件、并行组件、异常捕获组件等等。由于这些组件都可以包含在普通组件中,通过代码来实现条件、循环等逻辑。所以在执行流程定义时,无法清晰识别这些本应体现在流程中的逻辑。组件定义通常还有一个值得关注的就是组件的数量,哪些逻辑可以归类到一个组件中,哪些需要分开。
2025-04-23 17:44:56
923
原创 简洁至上——探索产品与技术的优雅原则
1.复杂的事情简单化2.简单的事情标准化3.标准的事情流程化4.流程的事情自动化我们先踏出第一步化繁为简简化复杂性不仅能在短期内提高开发效率和代码质量,也对产品和技术的长期价值产生深远影响1.当我们考虑如何简化一个给定的任务的每一步时,这不并是在偷懒。相反,我们是在明确实际上要完成的任务是什么,以及如何更容易做到。2.我们对某些无意义的新功能说“不”的时候,不是在限制创新,是在保持环境整洁,以免分心。3.软件的简单性是可靠性的前提条件。
2025-04-23 17:44:25
577
原创 质量视角下的系统稳定性保障--稳定性保障常态化自动化实践
随着系统数量增多,复杂度提高,线上应急问题时有发生;加之需投入大量人力进行服务治理和验证,为了减少日常应急问题及提前排除风险,发起对生产系统的持续综合性治理,实现常态化稳定性治理。在常态化治理过程中我们将识别问题等重复性有规律的工作实现自动化,技术人员更专注于解决问题。通过自动化的方式每日对线上核心UMP、Logbook、主机、数据库、ES、Redis风险进行巡检,降低人工review工作量。稳定性治理重在持续,过程中可能会遇到痛点和艰难,值得技术人用技术不断提升。
2025-04-21 16:12:23
577
原创 大促系统优化之应用启动速度优化实践
本文记录了在大促前针对SpringBoot应用启动速度过慢而采取的优化方案,主要介绍了如何定位启动速度慢的阻塞点,以及如何解决这些问题。希望可以帮助大家了解如何定位该类问题以及提供一些解决此类问题的思路。(本文使用的SpringBoot版本为2.6.2,JSF版本为1.7.6-HOTFIX-T2)下面我们来总结一下我们都做了什么1、Tomcat启动关闭TLD文件扫描。2、应用启动Hbase预热异步化,其实这块我们可以应用到其他场景,大家可以检查下自己的项目启动的时候有没有同步预热的场景。
2025-04-21 16:07:42
1045
原创 循序渐进搭建复杂B端系统整洁架构
PICASO是一套以领域驱动设计(Domain-Driven Design, DDD)作为思想内核,专门为集成式复杂业务系统设计的通用基础框架。它的命名来自“PICASOIs aContextualAbilitySOrchestrate Framework(PICASO是一种基于上下文的能力分解与编排框架)”的首字母缩写。
2025-04-21 16:05:54
1068
原创 DeepSeek 正当红,聊聊大模型应用的四大关键要素和未来
技术的发展并非一蹴而就,而是经历从萌芽到成熟,再到广泛应用的过程。20多年前的PC互联网和10多年前的移动互联网的兴起,都经历了这样的阶段,如今,从周期和技术成熟度来看,AI大模型也正站在爆发的前夜。DeepSeek R1 的出现,不仅展示了大模型的强大能力,更以开源和低成本的姿态,为更多企业和开发者提供了平等的机会。短短一个多月,国内众多公司纷纷接入,甚至包括腾讯、阿里等行业巨头。
2025-04-18 15:13:41
790
原创 3D空间视频生成技术探索与应用
近年来,随着社交媒体、流媒体平台以及XR设备的快速发展,沉浸式3D空间视频的需求迅猛增长,尤其是在短视频、直播和电影领域,正在重新定义观众的观看体验。2023年,苹果公司发布的空间视频技术为这一趋势注入了新的活力,2025年以来,轻量化AI/AR眼镜迎来爆发,持续推动对3D空间视频内容的需求。然而,尽管消费端对3D内容的需求不断上升,供给端仍面临创作瓶颈,主要体现在可用于拍摄3D视频内容的专业相机设备稀缺、制作专业度要求高以及成本高昂等问题。
2025-04-18 15:12:45
720
原创 【前瞻技术布局】咖啡机器人:具身智能技术首阶段探索与实践
我是一名京东具身智能算法团队的研究人员,目前,主要专注在真实场景真实机器人下打造一套快速落地新场景的具身智能技术架构,聚集机器人操作泛化能力提升,涉及模仿/强化学习、“视觉-语言-动作”大模型等方法研究。本文主要以第一阶段咖啡机器人任务场景为切入点,来阐述所取得的技术突破,以及后续技术优化方向。如下是机器人全程自主完成打咖啡的视频。具身智能,指的是配备实体身躯、支持物理交互的智能体所展现出的智能形态。凭借这一智能形式,机器人及其他智能设备得以在复杂多变的现实世界中执行各类任务。
2025-04-18 14:58:58
922
原创 《数据开发治理平台 + JBDP Copilot:让数据价值“码”上兑现》
JBDP Copilot贯穿数据开发全流程,支持SQL/Python代码生成、优化、纠错、注释等6大能力。:基于京东云弹性算力,支持千万级任务调度,支持资源按量付费,有效控制资源使用成本。据抽样统计,企业数据任务中32%的延迟由低效SQL引起(如未优化的嵌套查询)进入【数据开发治理平台】→ 工作台右上角开启“JBDP Copilot”开关。目前该功能为白名单阶段,需开通数据开发治理平台后提交。三、漫说数据:看AI如何帮助数据开发提效。一、什么是京东云数据开发治理平台?一、什么是京东云数据开发治理平台?
2025-04-15 10:01:18
266
转载 如何秒级实现接口间“幂等”补偿:一款轻量级仿幂等数据校正处理辅助工具
本文工具并不重要,重要的是与大家一起探讨一些解决方案,给大家提供一种思路。如上图所示,由于服务超时后,应用B内部仍在持续执行,此时恢复手段是:人工介入,梳理数据后,人工将应用B的数据进行回退,或者人工将应用A的数据进行补齐推动流程向后走,人工保证A和B之间的数据一致性。接口的幂等性,需要调用方和服务提供方相互配合才行,倘若服务提供方提供的接口支持幂等性,双方按照约定接口入参中的uuid作为唯一序列号进行防重,但服务提供方每次的重试调用(无论上次调用成功与否)uuid都会改变,这就会使得幂等失效。
2025-04-14 09:48:10
66
转载 【灯塔计划】供应链时序大模型探索
由于大部分纯时序大模型输出的是确定性的预测,没有预测的概率,这样无法计算RL中KL散度,策略概率的损失,我们构建了一个公用的组件,适配所有的时序模型(不限于大模型),我们利用分布建模的方法,将时序的预测以及好坏的预测假设服从N(μ,1)的正态分布,对于均值的计算则直接利用输出的预测的均值则可以计算而成,这样可以快速输出预测的概率。大部分的数据来自于京东的销量数据,我们收集京东食品、服装等多品类近3年来的基础销售数据,并且在不同的维度上进行时序的聚合,多品类和多维度的数据扩充了数据的丰富度和异构程度。
2025-04-11 10:03:37
75
转载 别再把JSF当HTTP:远程调用不背“包”袱!
然而,我注意到,在日常开发中的很多代码中, 设计JSF接口时,倾向于将返回对象设计得像HTTP请求的响应,包含。因此,正确的RPC接口设计应该与本地方法的设计一致,返回值简单明了,异常通过抛出异常的方式处理。这就是我们正常设计一个本地方法的方式, 通过java的异常机制,我们定义出可能的业务异常, 比如入参错误异常, 系统执行异常等等, 然后再调用时, 通过抛出异常来处理错误.同时, 在JSF框架中,异常会通过RPC框架进行序列化和传输,调用方可以正常地捕获到服务提供方抛出的异常。
2025-04-10 16:33:43
43
原创 京东中台化底层支撑框架技术分析及随想
作者:京东零售 徐开廷本文大约1.7万字,阅读需要13分钟。导读:近几年,除AIGC外,软件领域相关比较大的变化,就是各相关业务领域开始如火如荼地建设中台和去中台化了。本文不探讨中台对公司组织架构涉及的变化和影响,只是从中台化演进的思路,及使用的底层支撑技术框架进行分析探讨,重点对中台及前台协作涉及到的扩展点及热部署包的底层技术细节,结合京东实际落地情况,对涉及的核心技术框架进行源码初探分析,探讨技术框架的考虑点,拓宽大家的思路,欢迎大家审阅。
2025-04-08 11:11:50
1001
原创 ClickHouse 的“独孤九剑”:极速查询的终极秘籍
通过上述特点,我们可以清楚地看到,ClickHouse 的高性能查询能力并非偶然,而是其架构设计和技术创新的必然结果。无论是列式存储、向量化执行引擎,还是数据压缩技术、分布式架构,这些特点共同作用,使得 ClickHouse 在处理大规模数据分析时表现出色,在大数据的江湖中独步天下。
2025-04-07 13:18:22
571
原创 动态化-罗码(京东科技一码多端解决方案)介绍
动态化-罗码(后文统称动态化)是一个全自主研发的一站式跨平台解决方案,一份代码,可以在iOS、Android、H5及华为HarmonyOS运行。在研发团队使用后可大幅降低研发人力成本;为业务提供实时触达、A/B触达等能力以提升业务投放效率;同时保障了C端用户优秀的用户体验。
2025-04-07 13:15:49
932
原创 【灯塔计划】【积微成著】规模化混沌工程体系建设及AI融合探索
定义明确的稳定性指标,用以衡量系统在实验过程中的状态,稳定性指标可以是技术监控指标、业务监控指标或用户体验指标等。快递快运终端系统是服务于一线快递小哥及站点管理者的日常工作作业实操系统,是京东物流作业人员最多、物流揽派作业最末端以及作业形态多元化的系统。
2025-04-02 11:27:22
1000
原创 字符串替换研究
1、使用现成的AhoCorasick算法进行实现,是性能与稳定性最优的选择,非常强调性能,还是可以自己实现Trie树来实现;2、在真实的使用过程中,因为大部分的商品名称最多出现几个关键词,并且待替换的关键词往往都是比较多的,可以将这么关键词找出找出几个有代表性能的词,做前置判断,商品名称中是否存在;再进行全量替换;如待替换的关键词有:政府补贴、国补、支持国补;那么我们并不是直接就循环这个待替换的关键词组,而是找出这么关键词中都有的关键字”补”先判断商品名称中是否存在“补”字后,再做处理;
2025-04-02 11:23:37
382
原创 【LangChain】一文读懂RAG基础以及基于langchain的RAG实战
本文介绍了RAG的基础过程,在langchain框架下如何使用,再到提供两个个例子进行了代码实践,最后又简要介绍了企业级别RAG构建的内容。最后希望大家能有所收获。码字不易,如果喜欢,请给作者一个小小的赞做鼓励吧~~
2025-04-02 11:22:47
711
转载 动态化-罗码(京东科技一码多端解决方案)介绍
当时通过调研发现,市面上的跨端技术多以页面维度进行支持,对于局部卡片模式的跨端没有很好的解决方案,我们决定自研一个能够和原生卡片共存的区域卡片动态化技术,目标如下图所示,被放大的两个卡片使用动态化技术实现,不改变其余楼层的原生实现方式。这里分为两种类型产物的运行,首先是JSEngine,在iOS系统使用系统提供的JSCore、在安卓系统使用V8引擎、在Web使用浏览器的WebKit,由一个专门的JS线程在一个最早的时机(比如APP启动)进行JSEngine的加载,加载完毕后,就形成了了业务产物运行的环境;
2025-04-02 09:41:48
36
原创 业务复杂度治理方法论--十年系统设计经验总结
软件设计的核心在于降低复杂性。–《软件设计的哲学》业界对于复杂度并没有统一的定义,斯坦福教授John Ousterhout从认知负担和工作量方面给出了一个复杂度量公式子模块的复杂度cp乘以该模块对应的开发时间权重值tp,累加后得到系统的整体复杂度C这里的子模块复杂度cp是一个经验值需要注意:如果一个子系统特别复杂,但是很少使用及修改,也不会对整体复杂度造成太大影响。例:spring框架内部代码较为复杂,但由于几乎不需要我们去变动,所以对系统的整体复杂度影响并不大。
2025-03-31 14:34:54
842
原创 【转载】golang内存分配
在 1.10 以前 go 的堆地址空间是线性连续扩展的, 比如在 1.10(linux amd64)中, 最大可扩展到 512GB. 因为 go 在 gc 的时候会根据拿到的指针地址来判断是否位于 go 的 heap 的, 以及找到其对应的 span, 其判断机制需要 gc heap 是连续的. 但是连续扩展有个问题, cgo 中的代码(尤其是 32 位系统上)可能会占用未来会用于 go heap 的内存. 这样在扩展 go heap 时, mmap 出现不连续的地址, 导致运行时 throw.
2025-03-31 14:32:11
177
原创 缓存之美:万文详解 Caffeine 实现原理(下)
是一个 MPSC 的缓冲区,采用了分段的设计,将缓冲区划分为多份,根据线程的探针值哈希到不同的缓冲区,减少竞争的发生,并使用CAS操作来保证多线程下写入操作高效执行。队列按照从头节点到尾节点的顺序消费,使用频率相对较低的元素先被驱逐,在相同频率的情况下,优先保留主空间中的元素而不是窗口区元素。在文中提到过每个分区的双端队列使用了 LRU 算法,被访问过的元素会被放在尾节点,但对元素进行驱逐时并不以 LRU 的顺序为准,而是会参考频率草图中记录的元素频率,保证使用频率高的被保留,低的被驱逐。
2025-03-27 10:31:51
1022
原创 AI时代轻松保护软件版权,京版通让产品安心起航!
一旦软件遭遇侵权,比如未经授权的复制、分发、展示或修改等行为,持有软著的开发者可以依法采取法律手段维护自己的合法权益,不仅能够要求侵权方立即停止侵害行为,消除影响,还可以依据实际损失或侵权人的违法所得,请求相应的经济赔偿。对于软件开发者而言,及时进行软件著作权登记,不仅是对自身智力成果的保护,也是维护市场公平竞争秩序的重要手段。拥有软件著作权证书的软件产品,往往被视为技术实力雄厚、创新能力强的代表,它不仅证明了软件的合法性和原创性,还体现了软件的市场价值和潜力,在市场上更容易获得用户的信任。
2025-03-25 10:12:00
262
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人