导读为提升京东APP黄金流程(购物的核心交易链路,以下简称“黄流”)业务需求吞吐率,加速业务发展,黄流前台团队提出了一种新的研发共建模式,覆盖从需求受理、研发、测试的全流程共建体系,涉及前台产品、研发、测试的跨团队协作。历经半年的建设,我们完成了黄流ISV共建平台,同时以商详为试点,开展了与图书、健
著名IT作家、译者侯捷老师以前在其著作中有句话,就是我们今天文章的标题「源码面前,了无秘密」。可以说相当精炼。高度概括了从源码中我们可以收获的内容。在源码中,无论是应用的调用逻辑,关系,各种设计都一目了然。为什么会突然想到这样一个题目呢?是因为最近一个项目上线,其中有几个功能模块使用了Redis进行
ZooKeeper是个针对大型分布式系统的高可用、高性能且具有一致性的开源协调服务,被广泛的使用。对于开发人员,ZooKeeper是一个学习和实践分布式组件的不错的选择。本文对ZooKeeper的源码进行简析,也会介绍ZooKeeper实践经验,希望能帮助到ZooKeeper初学者。文章
背景在高并发的业务场景下,线程安全问题是必须考虑的,在JDK5之前,可以通过synchronized或Lock来保证同步,从而达到线程安全的目的。但synchronized或Lock方案属于互斥锁的方案,比较重量级,加锁、释放锁都会引起性能损耗问题。而在某些场景下,我们是可以通过JUC提供的CAS机
Arrays.asList转换基本类型数组的坑在实际的业务开发中,我们通常会进行数组转List的操作,通常我们会使用Arrays.asList来进行转换但是在转换基本类型的数组的时候,却出现转换的结果和我们想象的不一致。上代码:复制int[]arr={1,2,3};Listlist=Arrays.a
本文翻译自BilginLbryam的 Unbundling:TheNaturalEvolutionofTechStacks[1],翻译难免有所疏漏,有建议请反馈。“unbundling”如何翻译,有点纠结,我一度将其翻译成“解耦”,但解耦是“decoupling”的翻译。这里我将其翻译成分
合集-设计模式(20)1.策略模式(StrategyPattern)05-172.桥接模式(BridgePattern)2021-08-013.代理模式(ProxyPattern)2019-03-024.中介者模式(MediatorPattern)2018-12-195.过滤器模式(FilterPa