云交易技术对接全景
作者:京东零售 王英杰1.云交易简介简介:对外开放平台,通过对接各种流量场,输出京东商品供应链能力。主要业务模式: 1、官方旗舰店:京东以旗舰店方式入驻各大流量平台。 2、一件代发:为品牌商、商家在流量平台或者私域流量内的订单提供履约服务。1.对接全景图全程保姆式 一站式服务以下章节图例解释1.B客户业务操作流程1.B客户技术对接流程1.宙斯token与渠道
自己写插件-实现时间戳自由
作者:京东科技 张环受这篇文章《人人都能手写的chrome插件,帮我省了1000多块钱》启发,再加自己空闲时间学了一些前端的皮毛,以及实际工作需求,多种契机决定自己动手完成一个时间戳转换的谷歌插件。一、插件构思1、插件的使用方式:参考平常使用最高频的一个插件。它最提效的使用方式是在日志中选择一段字符串,然后右键选择用插件打开就可直接展示出格式化之后的数据。省略了复制数据-找网站-粘贴数据的中间流程
【前瞻技术布局】打破"沙漏“现象→提高生成式搜索/推荐的上限
作者:京东零售 王彗木 东方若晓,莫道君行早EMNLP 2024: Breaking the Hourglass Phenomenon of Residual Quantization: Enhancing the Upper Bound of Generative Retrievalpaper链接: https://arxiv.org/abs/2407.2148
设计模式-策略模式
作者: 京东工业 孙磊一、概念策略模式(Strategy Pattern)也称为(Policy Parttern)。 它定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变换,不会影响到使用算法的客户。策略模式属性行为模式。策略模式结构图二、实际应用业务场景:业务需要监听多种消息,将接收到的消息更新到同一个ES中,不同的消息类型使用不同的策略处理,补充不同的数据信息,
从 Java 到 Go:面向对象的巨人与云原生的轻骑兵
Go 语言在 2009 年被 Google 推出,在创建之初便明确提出了“少即是多(Less is more)”的设计原则,强调“以工程效率为核心,用极简规则解决复杂问题”。它与 Java 语言生态不同,Go 通过编译为 单一静态二进制文件实现快速启动和低内存开销,以25个关键字强制代码简洁性,用接口组合替代类继承,以显式返回error取代异常机制 和 轻量级并发模型(Goroutine/Chan
秒送LBS场景下的C端SOA服务容灾建设之-数据备份篇
前言在面向服务的架构(SOA)系统中,容灾能力是保障系统稳定性的重要组成部分。通过引入多数据中心部署、自动化故障转移、数据备份等技术手段,可以有效提升系统在面对突发灾难事件时的恢复能力。例如,采用主从复制和异地多活架构,可以确保在某个数据中心发生故障时,其他数据中心能够迅速接管业务,避免服务中断。此外,定期进行灾难恢复演练和系统压力测试,也是提高容灾能力的关键措施。通过这些手段,SOA系统能够在各
探索Playwright:前端自动化测试的新纪元
背景在前端开发中,自动化测试是确保软件质量和用户体验的关键环节。随着Web应用的复杂性不断增加,手动测试已经无法满足快速迭代和持续交付的需求。自动化测试通过模拟用户与应用的交互,能够高效地执行重复性测试任务,加快测试周期,提升测试覆盖率,从而更早地发现缺陷和问题。这不仅提高了软件的稳定性和可靠性,还降低了维护成本,并为创新和功能增强提供了更多的时间和资源。在众多自动化测试工具中,Playwrigh
接单流程设计探索
作者:京东物流 吕顺背景在物流系统中,接单是信息流的关键和重要的一环,每个业务场景都会对应一种标准接单流程,例如销售出、采购入等等。标准接单包括统一接口定义、统一数据模型、标准接单核心应用职责划分。而这个标准并不是在接口定义的初期就规划好的,通常会经历业务不断增长而带来的需求迭代、业务融合、组织架构调整或升级引起的流程优化与拆分。这样一些系列事件下来,可能一个接单应用会流转到多个部门,接单流程就会
探索Playwright:前端自动化测试的新纪元
作者:京东科技 张新磊背景在前端开发中,自动化测试是确保软件质量和用户体验的关键环节。随着Web应用的复杂性不断增加,手动测试已经无法满足快速迭代和持续交付的需求。自动化测试通过模拟用户与应用的交互,能够高效地执行重复性测试任务,加快测试周期,提升测试覆盖率,从而更早地发现缺陷和问题。这不仅提高了软件的稳定性和可靠性,还降低了维护成本,并为创新和功能增强提供了更多的时间和资源。在众多自动化测试工具
计算机网络协议介绍
作者:京东零售 王乐一、从一个请求来看网络分层原理1.1 复杂的网络以下为一次请求过程中可能遇到的问题,预示着网络的复杂性。1.2 如何简化复杂度为了简化网络的复杂度,网络通信的不同方面被分解为多层次结构,每一层只与紧挨着的上层或者下层进行交互,将网络分层,这样就可以修改,甚至替换某一层的软件,只要层与层之间的接口保持不变,就不会影响到其他层。1.2.1 OSI( Open System I
Web Components实践:如何搭建一个框架无关的AI组件库
作者: 京东科技 牛志伟一、让人又爱又恨的Web ComponentsWeb Components是一种用于构建可重用的Web元素的技术。它允许开发者创建自定义的HTML元素,这些元素可以在不同的Web应用程序中重复使用,并且具有自己的样式、行为和功能。Web Components并非一项新技术,而是一组持续演进的、由W3C标准化的组件化API。最早可以追溯到2011年左右,大约在2016年左右各
京东中台化底层支撑框架技术分析及随想
导读:近几年,除AIGC外,软件领域相关比较大的变化,就是各相关业务领域开始如火如荼地建设中台和去中台化了。本文不探讨中台对公司组织架构涉及的变化和影响,只是从中台化演进的思路,及使用的底层支撑技术框架进行分析探讨,重点对中台及前台协作涉及到的扩展点及热部署包的底层技术细节,结合京东实际落地情况,对涉及的核心技术框架进行源码初探分析,探讨技术框架的考虑点,拓宽大家的思路,欢迎大家审阅。1、序言中台
ClickHouse 的“独孤九剑”:极速查询的终极秘籍
作者:京东零售 夏百科引言在大数据时代的江湖,数据量呈爆炸式增长,如何高效地处理和分析海量数据成为了一个关键问题。各路英雄豪杰纷纷亮出自己的绝技,争夺数据处理的宝座。而在这场激烈的角逐中,ClickHouse 以其“独孤九剑”般的绝世武功,横空出世,令群雄侧目。ClickHouse 是一个用于联机分析处理(OLAP)的开源分布式数据管理系统。它由俄罗斯的 Yandex 公司开发,为海量数据的实时分
动态化-罗码(京东科技一码多端解决方案)介绍
作者;京东科技 胡大海前言 动态化-罗码(后文统称动态化)是一个全自主研发的一站式跨平台解决方案,一份代码,可以在iOS、Android、H5及华为HarmonyOS运行。在研发团队使用后可大幅降低研发人力成本;为业务提供实时触达、A/B触达等能力以提升业务投放效率;同时保障了C端用户优秀的用户体验。一、背景市面上的APP,一般使用两种技术方式承载业务: &nb
给Ai-Agent重塑真身 ---浅谈如何优雅地拆解AI-Agent
作者:京东物流 赵勇萍前言最近随着manus的火爆, 其实大家更关注AI-Agent的开发技术了.毕竟大模型是大脑, 而Ai-Agent才是给最强大脑重塑真身的那个莲藕. 而我也这多半年的时间里, 研究了很多AI-Agent框架. 而在AI-Agent开发中, 其实也发现了一些技巧,思路和架构思考. 比如, 我们如何更好的跟LLM进行交流? 如何可以更好的优化我们的prompt和token数量?
【灯塔计划】【积微成著】规模化混沌工程体系建设及AI融合探索
1、何谓混沌工程?混沌工程由 Netflix 率先提出并应用,其业务高度依赖分布式系统,为确保系统在面对各种故障时仍能稳定运行,其组织开发了混沌工程工具集 ——Chaos Monkey 等,通过随机地关闭生产环境中的服务器来验证系统弹性。混沌工程是一种在分布式系统上进行实验的方法,目的是提升系统的弹性和稳定性。它通过主动向系统注入故障,观察系统在各种压力情况下的行为,以发现系统中的潜在问题并加以改
字符串替换研究
需求非常简单,给定一组关键词,需要将商品名称中出现过的关键字替换掉;如:skuName="HUAWEI Pura 70 Pro 国家补贴500元 羽砂黑 12GB+512GB 超高速风驰闪拍 华为鸿蒙智能手机" 需要替换成 skuName="HUAWEI Pura 70 Pro 羽砂黑 12GB+512GB 超高速风驰闪拍 华为鸿蒙智能手机" 这里的关键字&
【LangChain】一文读懂RAG基础以及基于langchain的RAG实战
本文参与神灯创作者计划 - 前沿技术探索与应用赛道内容背景 随着大模型应用不断落地,知识库,RAG是现在绕不开的话题,但是相信有些小伙伴和我一样,可能会一直存在一些问题,例如:•什么是RAG•上传的文档怎么就能检索了,中间是什么过程•有的知道中间会进行向量化,会向量存储,那他们具体的含义和实际过程产生效果是什么•还有RAG = 向量化 + 向量存储 + 检索 么?•向量化 + 向量存储
【转载】golang内存分配
同时 Go 对于 GC 后回收的内存页, 并不是马上归还给操作系统, 而是会延迟归还, 用于满足未来的内存需求.在 1.10 以前 go 的堆地址空间是线性连续扩展的, 比如在 1.10(linux amd64)中, 最大可扩展到 512GB. 因为 go 在 gc 的时候会根据拿到的指针地址来判断是否位于 go 的 heap 的, 以及找到其对应的 span, 其判断机制需要 gc hea
业务复杂度治理方法论--十年系统设计经验总结
一、复杂度综述1、什么是复杂度软件设计的核心在于降低复杂性。--《软件设计的哲学》业界对于复杂度并没有统一的定义,斯坦福教授John Ousterhout从认知负担和工作量方面给出了一个复杂度量公式子模块的复杂度cp乘以该模块对应的开发时间权重值tp,累加后得到系统的整体复杂度C这里的子模块复杂度cp是一个经验值需要注意:如果一个子系统特别复杂,但是很少使用及修改,也不会对整体复杂度造成太大