一、背景 大促已经如期而至,接下来我会从技术的角度,跟大家聊聊大促备战的底层逻辑和实战方案,希望能够解答大家心中的一些疑惑。 首先,大促为什么如此重要呢?先从数据的角度简单做一下分析,以下表格罗列了我们历年大促GMV成绩单: 年份 618销售额(亿元) 年销售额(亿元) 618销售额占比 2022 3793 33155 11.4% 2021 3 […]
一、背景 大促已经如期而至,接下来我会从技术的角度,跟大家聊聊大促备战的底层逻辑和实战方案,希望能够解答大家心中的一些疑惑。 首先,大促为什么如此重要呢?先从数据的角度简单做一下分析,以下表格罗列了我们历年大促GMV成绩单: 年份 618销售额(亿元) 年销售额(亿元) 618销售额占比 2022 3793 33155 11.4% 2021 3 […]
Tech 导读 随着LLM的技术发展,其在业务上的应用越来越关键,通过LangChain大大降低了LLM应用开发的门槛。本文通过介绍LangChain是什么,LangChain的核心组件以及LangChain在实际场景下的使用方式,希望帮助大家能快速上手LLM应用的开发。 01 LangChain是什么 在今年的敏捷团队建设中,我通过Suite执行器实现了一键自动化单元测 […]
👉导读 OpenAI 发布会带来了全新的开发方式——Assistants API,这背后基于的正是你可能闻所未闻的 AI Agent 智能体技术。本篇文章将为你全面解析 AI Agent 的概念、技术框架与应用场景。长文干货,先码再看! 👉目录 1 引言 2 什么是 Agent 3 智能体技术框架 4 智能体应用场景 5 总结 01 引言 北京时间 11 月 7 日凌晨,O […]
该文档记录云交易开发小伙伴儿们在开发过程中的实际应用案例,记录典型案例,以解决开发过程中的实际问题为主,涵盖设计方案、编码、测试、集成、部署等等。 Prompt提问万能公式 一、基于ChatGPT进行资源排期 1、首先进行拆分,分为周一到周五和周六周日 2、引导chatGPT进行排班 二、让ChatGPT帮忙看下正则表达式的含义 在看代码的过程中,发现有个地方使用了正则表达 […]
在项目上我们经常会遇到一些导入导出的场景,常见的有 Excel 的导入导出,以及 PDF 的导出。 这一期的技术方案总结一下相关的技术方案和实现。 Excel 的导出和导入 我们先放开脑洞枚举一下有哪些导入导出的方案。 Excel 的导出方案有: 前端导出,直接在前端导出所有的数据,甚至后端可以复用分页的查询数据接口。 由具体的领域微服务实现同步导出。 由 BFF 通过领域 […]
单元测试推广的难题 前几天被一些朋友问到怎么提高测试覆盖率,并同时有人表示在国内推广单元测试几乎不可能。 诚然在国内的项目中,推广单元测试非常困难。 其实这里面有一个误区,如果单元测试不能起到助力开发团队作用,而是一种政治任务,那么很难推广。 我所在的海外和国内的项目都还保持不错的测试覆盖率,所以我是这样回复这个问题的: 提高测试覆盖率需要设计足够好的测试策略,让单元测试或 […]
前言 本文是京东交易链路众多核心应用GC优化经验的总结,旨在简明扼要说明各种回收器的基本调优设置,为各应用GC配置提供指引。 一、JDK版本 以下所有优化全部基于JDK8版本,强烈建议低版本升级到JDK8,并尽可能使用update_191以后版本。 二、如何选择垃圾回收器 响应优先应用:面向C端对响应时间敏感的应用,堆内存8G以上建议选择G1,堆内存较小或低版本JDK选择C […]
问题分析 在应用项目中,我们总会遇到很多字典项的数据,比如类型、状态等。这些数据一般是有限个可选值,在前端可能作为 Select 控件存在,用于录入、搜索等场景。 这类数据的一般作为配置存在,怎么设计才能让前后端维护方式最低呢? 我们在团队上做了很多讨论,结合过完项目的经验把潜在方案整理如下。 方案枚举 假定我们经过简单的头脑风暴,可以枚举出下面的方案,再来分析其优缺点: […]
很多文章都在讨论认证和鉴权等相关话题,我自己几年前也写过几篇类似的文章,但在实际工作中,我们常常会忽略一部分设计。我们需要思考的是,用户在完成认证并获取访问凭证后,应该在哪里验证其访问权限。 这类问题尤其是在微服务场景下非常突出,如果没有统一的方案或者约定,会造成不同的开发人员在不同服务使用不同的策略实现。 微服务下有哪些鉴权类型? 权限检查点设计一个要点是,不能一刀切,需 […]
问题 假设,业务上需要生成订单编号,其要求为: 不能太长,固定 10 位。 生成规则为:“订单类型字母缩写” + “年月日” + 步长为 1 的递增序列。 单号每天重新开始。 性能要求一般,日均单量一万左右,订单均匀分布,并发不高。 经过分析,考虑如下特点: 不能使用 UUID,因为过长且有顺序问题。 不能直接使用数据库的自增 ID 主键,可以考虑通过自增主键进行复合处理。 […]
考虑CMS无法有效避免FGC,且单次GC耗时经常不可控。因此在如下两种场景下倾向于使用G1替换CMS: 大堆系统长时间FGC会引起上层服务异常,比如RegionServer/HiveServer等。 对读写毛刺比较敏感的在线数据库服务,比如在线推荐场景下的HBase,GC耗时过长就会导致整体可用率降低。 笔者在2019年开始将集团内部多数HBase所用CMS升级到G1,升级 […]
一、踩坑描述 写分页查询接口,order by和limit混用的时候,出现了排序的混乱情况 在进行第N页查询时,出现与第一前面页码的数据一样的记录。 二、问题 在MySQL中分页查询,我们经常会用limit,如:limit(0,20)表示查询第一页的20条数据,limit(20,20)表示查询第二页的数据。业务上我们通常也会在分页的时候加上排序 order by; 但是当l […]
一、问题回顾 1.1 问题描述 在项目的性能测试中,相关的接口的随着并发数增加,接口的响应时间变长,接口吞吐不再增长,应用的CPU使用率较高。 1.2 分析思路 谁导致的CPU较高,阻塞接口TPS的增长?接口的响应时间的调用链分布是什么样的,有没有慢的点? 1)使用火焰图分析应用的CPU如下,其中log4j2日志占了40%左右CPU,初步怀疑是log4j2的问题。 2)调用 […]
最近在写代码时,发现一个分页的问题,查询的分页数据一直不正确,多次检查代码和搜索资料都没找到原因。如Mybatis版本问题?还是哪里分页没有正常使用? 故此,借助与ChatGPT,看下是否能帮我找出Bug? 下面是Java代码和Mybatis SQL: 看代码是觉得没啥不同,应该能正确分页查询数据才对,但是实际上查询分页数据不对。 接着把这段代码发给ChatGPT,问他分页 […]
git对于大家应该都不太陌生,熟练使用git已经成为程序员的一项基本技能,尽管在工作中有诸如 Sourcetree这样牛X的客户端工具,使得合并代码变的很方便。但找工作面试和一些需彰显个人实力的场景,仍然需要我们掌握足够多的git命令。 下边我们整理了45个日常用git合代码的经典操作场景,基本覆盖了工作中的需求。 Commit 1、我刚才提交了什么? 如果你用 git c […]
BeanUtils (1) BigDecimal (1) CDC (1) ETL (1) github (1) heap (1) LLaMa (1) MAT (5) MDM (1) Sora (1) TCP (1) 业务图 (1) 企业应用 (1) 停机迁移 (1) 内存泄露 (4) 协议 (1) 可用性 (1) 基础设施层 (1) 堆内存 (1) 堆外存 (1) 大事记 (1) 实时协作 (1) 对象转换 (1) 应用架构 (1) 异常 (3) 技术规范 (1) 技术选型 (4) 提示工程 (1) 数据交换 (1) 数据共享 (1) 数据双写 (1) 日期 (1) 时间 (1) 时间线 (1) 术语 (1) 架构方案 (14) 流程图 (1) 精度 (1) 线程模型 (1) 经验分享 (1) 网络编程 (2) 解耦 (1) 软件复杂性 (1) 软件工程 (1) 重构 (3) 重试 (1) 隔离级别 (1) 集群扩容 (1) 领域层 (3) 领域模型 (1)
COPYRIGHT © 2014-2024 verysu.com . ALL RIGHTS RESERVED.
Theme Kratos Made By Seaton Jiang