暂无搜索历史
我们常说的定时任务有两种架构,一种是本地定时任务调度,另外一种是分布式的。前者将任务参数硬编码在代码配置中,通常还和业务代码混合在一起,部署时通过环境变量来区分...
众多设计模式中,我觉得模板方法模式是很好理解,也很值得深入研究的技巧。定义如下,在一个包含多个步骤的业务框架中,大部分步骤是固定不变,并且适用于多种业务场景,可...
在这种场景下,很容易出现父子任务,父子任务共用一个线程池的话可能会出现死锁,这个是需要特别留心的。
在数据库中新建一个字段并且设置为索引列,还有删除整张表的数据,类似这些操作都是一系列操作的组合,执行后不能出现中间状态,也就是不会出现新建了字段却不是索引的情况...
本地缓存指的是单机实例的JVM内存数据。多个实例共享着同一个分布式缓存,组成了多级缓存架构。这种多级缓存的特点是,最外层读取速度快但是空间小,越内层速度慢但是空...
Redis内存数据库是一把双刃剑,用得好的话就合家欢喜,否则就是深陷泥潭。所以我今天来谈一谈使用它时容易碰到的坑,帮你探探路。
异常处理是很多新手搞不懂的逻辑,别人的代码有时进行了异常捕获,有时又不进行捕获,到底是为啥?有什么科学依据嘛?这种代码确定容易让人迷惑,所以今天我就来捋一捋异常...
在传输过程中,RPC并不会把请求参数的所有二进制数据整体一下子发送到对端机器上,中间可能会拆分成多个数据包,也有可能合并成其他请求的数据包。RPC协议就是为了"...
可复用架构的本质就是分和合。先打散再组合起来,只对外暴露各个场景下业务逻辑的调用入口。就好比,一个模型中有多个对象,这些对象只有整体出现才有意义,我们不能只暴露...
程序员最怕的是异常告警,特别是产品反馈有大范围的用户投诉,身上焦虑激素分泌必然瞬间暴涨。稍不留神就会眉毛胡子一把抓,无法从全局角度分析告警的来龙去脉。而本次分享...
一个项目的完整生命周期包括以下几点,想法提出、竞品分析、调研、产品内部沟通确定、依赖解决、需求预审、技术方案初步确定、需求正式评审、技术方案正式评审、开发实现、...
我之前在做业务需求的时候,很多的个性化需求并不能快速响应,实现后有时也很难保证系统的可阅读性。不过好消息是,我今年在做京东内容领域的组件化改造和能力输出,之前的...
image.png 基本原理 Nginx 的进程模型 Nginx 服务器,正常运行过程中: 多进程:一个 Master 进程、多个 Worker 进
在IDF05(Intel Developer Forum 2005)上,Intel首席执行官Craig Barrett就取消4GHz芯片计划一事,半开玩笑当众单...
很早就接触了volatile,但是并没有特别深入的去研究它,只有一个朦胧的概念,就是觉得用它来解决可见性的,但可见性又是什么呢?
1、不管是做需求还是测试,都应该考虑整个链路,确保兼容性或者其他模块不受影响。比如内容创作改动,应该考虑到审核侧、内容分发侧是否正常。
我曾经单纯的认为修改少就意味着错误少,所以习惯性在原有逻辑上打补丁,可错误往往就是因为那不起眼的修改引起的。聪明的人警醒我,我存在认知错误,因...
负载均衡算法是一种将数据流量按需分配给服务器去响应的算法,通常有简单轮询、加权轮询、粘性Session(一致性哈希)、最少连接数等等算法,本文不会讲解这些算法的...
当我们依赖的中间件资源或者是上游服务性能出现严重问题时,为了防止用户看到错误页面或者加载页面时间过长,我们需要将服务降级静态页面。或者将不影响主流程的旁路服务关...
京东 | 资深架构师 (已认证)
暂未填写技能专长
暂未填写学校和专业
暂未填写个人网址