背景 距离买房已经过了3个多月,距离从去年看房已经过了一年多,整体看房的时间也不算短,整个期间也有很多纠结的时刻,最终买房的决定也做得比较仓促,现在想来也有不少的遗憾。由于最...
背景 距离买房已经过了3个多月,距离从去年看房已经过了一年多,整体看房的时间也不算短,整个期间也有很多纠结的时刻,最终买房的决定也做得比较仓促,现在想来也有不少的遗憾。由于最...
mysql的分库分表一般用于单库整体数据量太大,或者单表的数据量太大了,这种情况会进行分库分表,回想一下自己做过的项目,也就少有的几个用到了分库分表。最近学到一个观点,就是做...
简介 漏桶限流,漏桶流出的速度是恒定的,流入速度不定,桶满时则抛弃请求,一般可用于保护三方接口,这样保证不超出限制的qps。对比令牌桶的话,在突发流量上会丢弃请求数更少,漏桶...
简介 令牌桶作为限流算法之一,具体原理是一段时间内向桶里加入一定的token数,使用时进行扣减,判断扣减数和剩余令牌数之间的关系,这种限流的好处是更灵活,能够处理突发流量,有...
滑动窗口简介 首先说下固定窗口统计,比如以分钟为单位,限制100qps,进行限流的话会存在一种情况,就是上一个分钟的末尾有98qps,当前分钟的开始有98qps,这样在短时间...
简介 http协议存在消息在传输过程中被劫持,被篡改的风险,所以在tcp协议的上层,存在着tls协议,即传输层安全协议,用来对传输信息进行加密。加密的核心问题是如何安全地协商...
1 进程与线程的区别 根本区别:进程是操作系统资源分配的基本单位,而线程是处理器任务调度和执行的基本单位。 资源开销:每个进程都有独立的代码和数据空间,程序之间的切换会有较大...
1 用户态与内核态切换 1.1 概念 用户态:ring3, 在应用程序中运行,代码没有对硬件的直接控制权限,程序通过调用系统接口来达到访问硬件和内存,在这种模式下,程序发生崩...
1 sentinel降级 sentinel降级的处理逻辑由FlowSlot节点进行处理,依赖设置的降级rule,下面是降级rule初始化的例子。 1.1 flowSlot逻辑...
1 entry源码结构 entry抽象类对应的类图如下: 其中主要使用的entry实现类为CtEntry类。 2 CtEntry类结构 2.1 CtEntry entry方法...
1 sentinel节点 所有节点都实现了processorSlot节点中的entry和exit方法,继承自AbstractLinkedProcessorSlot类。 下面对...
注:本文定义-在函数执行前后增加对应的逻辑的操作统称为MOCK 1、引子 在某天与QA同学进行沟通时,发现QA同学有针对某个方法调用时,有让该方法停止一段时间的需求,我对这部...
@后厂村老司机 cms gc的时候,所以取决于这个的间隔
数据库连接池配置不当导致的full gc问题记录背景 线上有个流量比较大的服务,qps日常在2000-3000之间,请求方对耗时要求比较高,响应时间要求在300ms以内,服务上线以后,运行也比较平稳。某天夜里,突然有几千个...
解法 set暴力遍历解法 动态规划解法
解法 思路和岛屿个数类似,只不过这种需要递归里面返回1的个数,也是上下左右进行深度优先遍历,把遇到的1改成0。
condition使用场景 condition条件变量的使用,看起来和操作系统中的pthread_cond很像,又类似于object.wait和object.signal的用...
Sychronized关键字使用场景 三种方法 修饰实例方法作用于当前对象实例加锁,进入同步代码前要获得当前对象实例的锁。 修饰静态方法给当前类加锁,会作用于类的所有对象实例...
现象 线上接口突然出现大量超时,仔细一看,超时的dubbo provider都是一台机器,一看,果然又是full gc耗时过长,最近真和这个干上了,上次是weak refer...
概念 java中之所以会有强引用、软引用、弱引用、虚引用这些概念,是为了方便内存回收。 强引用即便内存不足,oom也不会被回收,是大多数引用的使用场景 软引用,内存足够时不进...
parNew young gc 日志分析 36402.792是gc相对于进程起来的时间,gc后面的Allocation Failure是发生gc的原因,ParNew是新生代收...