前言 最近在做一个权限控制的功能,其中一项服务是对用户进行冻结,具体的业务逻辑不一定合适细讲,就以“把大象装进冰箱”来抽象代替。其有如下流程: 需要依赖两个服务提供方:1.冰...
前言 最近在做一个权限控制的功能,其中一项服务是对用户进行冻结,具体的业务逻辑不一定合适细讲,就以“把大象装进冰箱”来抽象代替。其有如下流程: 需要依赖两个服务提供方:1.冰...
前面两篇文章分别介绍了Sentinel怎么用,QPS怎么计算,接下来介绍下Sentinel限流策略Alibaba Sentinel限流功能[https://www.jians...
业务程序员在各种需求与业务压力的驱动下,非常容易沦为crud if else选手。解脱之法就是多看别人的优秀代码,取其精华,知行合一,把自己的代码写优秀。本文所有的代码均源自...
之前发过一篇文章,介绍了alibaba Sentinel限流功能。Alibaba Sentinel限流功能[https://www.jianshu.com/p/49df9fd...
前言 上周经历了合作方未按照约定在客户端进行缓存,以高QPS调用我这边某个接口的问题,当时带来的影响是接口RT变高,当时如果QPS继续增加,将会导致整个应用级别的服务不可用。...
背景介绍 某日下午大约四点多,接到合作方消息,线上环境,我这边维护的某http服务突然大量超时(对方超时时间设置为300ms),我迅速到鹰眼平台开启采样,发现该服务平均QPS...
行存储 我们常用的关系型数据库mysql,oracle等都是基于行存储,以最常用的mysql数据库 innodb引擎为例,见下图 多个连续的行记录,组成一个data page...
@丿醉灬逍遥 你可以嗖一下-XX:MetaspaceSize 这个jvm参数的意思就明白了
JVM专题 3:Full GC 触发条件一共5种场景 1.System.gc()程序中显式的调用System.gc(),有可能会触发Full GC。(比如NIO中的直接内存使用)使用-XX:-+DisableExp...
代码两边都没开源,git上面有三年前的OceanBase代码,感兴趣的可以研究一下,这篇文章主要就从架构上面分析OceanBase跟Oracle的区别,找到OB胜出最本质的原...
前言:大部分多线程同步场景,在功能和性能层面,synchronized可以满足,少部分场景Lock可以满足,dubbo的源码也符合这个比例,需要使用到Condition的场景...
前言 暴雪出品,必属精品,google亦然。对象序列化方式有很多,个人而言,java自带序列化ObjectOutputStream/ObjectOutputStream,我只...
1.dubbo调用过程 以dubbo官方demo为例,在provider端,从netty接收到消息,递交给业务线程池处理开始,到真正调用到业务方法sayHello()结束,中...
Future 在java 8之前,我们可以使用Callable+Future来异步执行任务和获取结果,比如 其获取结果,get方法实现本质是轮询校验结果状态积,阻塞实现依赖的...
前言:最近在研究dubbo,翻到dubbo作者梁飞11年发在iteye上面的一篇文章https://javatar.iteye.com/blog/1123915只用了一个类R...
前言:在日常的代码中,我们经常使用简单工厂来生成,某个接口不同实现的实例,但是其实还是有替代方案来完成,比如java SPI和dubbo SPI 1.java SPI 例子其...
前言:不知道现在的大学里面,在学习关系数据库时,还提不提数据库三范式第一范式:列不可拆第二范式:主键唯一第三范式:外键关联,避免数据冗余 数据库发展到现在,无论是从数据库本身...
1.观察者模式 jdk很罕见的提供了相关的类 java.util.Observable,java.util.Observer类图见下 比较简单,Observable持有Obs...