问题 一次线上发版过程中发现应用的接口出现大量的超时现象.通过告警和链路追踪系统发现是有一个应用的dubbo请求大量超时.速度进入服务器查看日志发现出现大量的OOM:perm...
问题 一次线上发版过程中发现应用的接口出现大量的超时现象.通过告警和链路追踪系统发现是有一个应用的dubbo请求大量超时.速度进入服务器查看日志发现出现大量的OOM:perm...
背景 许多人都听过异步编程,同步编程,但是好像对响应式编程这个新名称感到很陌生,即使我们在实际项目中已经在使用这种编程方式。 这篇文章就是来介绍响应式编程(Reactive ...
RocketMQ的事务消息,是指发送消息事件和其他事件需要同时成功或同时失败。比如银行转账,A银行的某账户要转一万元到B银行的某账户。A银行发送“B银行账户增加一万元”这个消...
一、模式介绍 建造者模式是创建型模式的一种,其最大的特点就是允许调用者分步骤来创建复杂的对象。通常包含如下几种角色: 产品,指需要创建的产品对象; 建造者,根据不同的业务逻辑...
秒杀活动是指网络商家为促销等目的组织或网上限时抢购活动,这种活动具有瞬时并发量大、库存量少和业务逻辑简单等特点。设计一个秒杀系统需要考虑的因素很多,比如对现有业务的影响、网络...
正文总结 正文 Spring 是一个开源的设计层面框架,它解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。包括在此基础上衍生的 Spri...
1. 什么是mycat? 2. mycat可以应用在什么场景? 3. 什么样的表需要进行分片? 答:超过1000万的表需要进行分片。 4. mycat的工作原理是什么? sq...
1.一些概念 1.1.数据类型 Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。...
一次内存溢出排查过程 导出超过20W条数据到excel。 默认使用poi提供方法XssfWorkBook进行写入Excel。 分页查询数据,每次查询完之后,写入到Excel。...
Seata框架是一个业务层的XA(两阶段提交)解决方案。在理解Seata分布式事务机制前,我们先回顾一下数据库层面的XA方案。 1. MySQL XA方案 MySQL从5.7...
首先,我们先来看看一次查询/更新语句流程图 mysql不是每次数据更改都立刻写到磁盘,而是会先将修改后的结果暂存在内存中,当一段时间后,再一次性将多个修改写到磁盘上,减少磁盘...
摘要:在微服务架构下,一个服务可能依赖多个下游服务,为了保证自身服务的可用性,当下游服务出现故障时,特别是强依赖的下游服务出现故障时,如何做才能最大程度的保证自己不受影或者说...
QPS单个进程每秒请求服务器成功的次数req/sec = 总请求数 /(进程总数 * 请求时间)一般使用http_load进行统计 每台服务器每天的PV(QPS x 3600...
一、容错限流的需求 在复杂的分布式系统中通常有很多依赖,如果一个应用不能对来自依赖故障进行隔离,那么应用本身就处于被拖垮的风险中。在一个高流量的网站中,某一个单一后端一旦发生...
本想自己总结一下这两者的区别,发现一片通俗易懂的文章,写得很不错,我就不重复劳动啦。原文地址:什么是CPU密集型、IO密集型? CPU密集型(CPU-bound) CPU密集...
前言 Java中的线程池用过吧?来说说你是怎么使用线程池的?这句话在面试过程中遇到过好几次了。我甚至这次标题都想写成【Java八股文之线程池】,但是有点太俗套了。虽然,线程池...
在开发过程中,应用程序通常会和其他的应用进行交互,应用系统之间的交互往往离不开网络通信。然而,网络环境是不稳定的,网络超时是我们需要考虑的问题。 交互模式 同步同步调用同步调...
内存溢出(out of memory)通俗理解就是内存不够,通常在运行大型软件或游戏时,软件或游戏所需要的内存远远超出了你主机内安装的内存所承受大小,就叫内存溢出开发中,产生...
上一文,我们分析了redisson加锁的过程,总结来说,流程不复杂,代码也很直观,主要是异步通过lua脚本执行了加锁的逻辑。其中,我们注意到了一些细节,比如 Redis...