Vitess全局唯一ID生成的实现方案 | 京东云技术团队
为了标识一段数据,通常我们会为其指定一个唯一id,比如利用MySQL数据库中的自增主键。但是当数据量非常大时,仅靠数据库的自增主键是远远不够的,并且对于分布式数据库只依赖MySQL的自增id无法满足全局唯一的需求。因此,产生了多种解决方案,如UUID,Sn
深入理解java和dubbo的SPI机制 | 京东物流技术团队
1SPI简介1.1SPI(ServiceProviderInterface)本质:将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。javaSPI:用来设计给服务提供商做插件使用的。基于策略
浅谈分布式事务及解决方案 | 京东物流技术团队
1背景在讲述分布式事务的概念之前,我们先来回顾下事务相关的一些概念。1.1事务的基本概念就是一个程序执行单元,里面的操作要么全部执行成功,要么全部执行失败,不允许只成功一半另外一半执行失败的事情发生。例如一段事务代码做了两次数据库更新操作,那么这两次数据库
研发日常踩坑-Mysql分页数据重复 | 京东云技术团队
踩坑描述:写分页查询接口,orderby和limit混用的时候,出现了排序的混乱情况在进行第N页查询时,出现与第一前面页码的数据一样的记录。问题在MySQL中分页查询,我们经常会用limit,如:limit(0,20)表示查询第一页的20条数据,limit
一次单据图片处理的优化实践 | 京东物流技术团队
1引言日常开发中接到这样的需求,上游系统请求获取一张A4单据用于仓库打印及展示,要求PNG图片格式,但是我们内部得到的单据格式为PDF,需要提取PDF文档的元素并生成一张PNG图片。目前已经有不少开源工具实现了这一功能,我们找了网上使用比较多的Apache
实用的命令行终端增强软件:Tabby | 京东云技术团队
还是那句话:出众的软件有很多,适合自己的才是最好的。一、软件介绍Tabby是一个开源免费软件,支持Windows、macOS和Linux系统。它提供了一个高度可定制的终端界面,可以通过多种方式添加、切换和关闭终端标签页。能与Linux服务器轻松传输文件,支
为什么idea建议使用“+”拼接字符串 | 京东云技术团队
前言各位小伙伴在字符串拼接时应该都见过下面这种提示:内容翻译:报告StringBuffer、StringBuilder或StringJoiner的任何用法,这些用法可以用单个java.lang.String串联来替换。使用字符串串联可以使代码更短、更简单。
promise时效架构升级方案的实施及落地 | 京东物流技术团队
一、项目背景为什么需要架构升级promise时效包含两个子系统:内核时效计算系统(系统核心是时效计算)和组件化时效系统(系统核心是复杂业务处理以及多种时效业务聚合,承接结算下单黄金流程流量),后者依赖前者,分别由两组技术团队支持;因为有些业务的渗透造成两个
为React Ant-Design Table增加字段设置 | 京东云技术团队
最近做的几个项目经常遇到这样的需求,要在表格上增加一个自定义表格字段设置的功能。就是用户可以自己控制那些列需要展示。在几个项目里都实现了一遍,每个项目的需求又都有点儿不一样,迭代了很多版,所以抽时间把这个功能封装了个组件:,将这些差别都集成了进去,方便今后
扫盲Kafka?看这一篇就够了! | 京东云技术团队
kafka的使用场景为什么要使用Kafka消息队列?解耦、削峰:传统的方式上游发送数据下游需要实时接收,如果上游在某些业务场景:例如上午十点会流量激增至顶峰,那么下游资源可能会扛不住压力。但如果使用消息队列,就可以将消息暂存在消息管道中,下游可以按照自己的