首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java
纵然间
创建于2024-02-24
订阅专栏
Java全栈知识体系
等 1 人订阅
共152篇文章
创建于2024-02-24
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Spring支持的bean作用域
1、sigleton 使用该属性定义Bean时,IOC容器仅创建一个Bean实例,IOC容易每次返回的是同一个Bean实例。 2、prototype 使用该属性定义Bean时,IOC容器可以创建多个B
SpringBoot中的starter如何理解
使用Spring+SpringMVC框架进行开发的时候,如果需要引入mybatis框架,那么需要在xml中定义需要的bean对象,这个对象很明显是很麻烦的,如果需要引入额外的其他组件,那么也需要进行复
微服务配置中心如何实现自动刷新
1、配置中心Server端承担起配置刷新的职责 2、提交配置触发post请求给server端的bus/refresh接口 3、server端接收到请求并发送给Spring Cloud Bus 总线 4
Hystrix实现原理
Hystrix是一个延迟和容错库,目的是隔离远程系统、服务和第三方库的访问点,停止级联故障,并在不可避免发生故障的复杂分布式系统中实现快速恢复。主要靠Spring的AOP实现。 实现原理: 正常情况下
解决线上Java程序GC频繁问题思路
1、Full GC次数过多 这种情况比较容易出现,尤其是新功能上线时。对应Full GC 较多的情况,其主要有如下两个特征: 线上多个线程的CPU都超过了100%,通过jstack命令可以看到这些线程
分布式锁常见使用场景与问题解决办法
一、常见的分布式锁使用场景 1、系统是一个分布式系统,集群部署,Java的锁已经锁不住了。 2、操作共享资源,比如库里唯一的用户数据。 3、同步访问,即多个进程同时操作共享资源。 二、分布式锁解决方
Zookeeper分布式锁实现原理解读
一、ZK的顺序节点特性 使用ZK顺序节点,比如在lock目录下创建3个节点,ZK集群会按照发起创建的顺序来创建节点,最后一位是依次递增的,节点名称由ZK来完成。 二、临时节点特性 ZK中海油一种名为临
ZooKeeper和Redis做分布式锁的区别
Redis锁: 1、Redis只保证最终一致性,副本间的数据复制是异步进行(Set写,Get读,Redis集群一般是读写分离架构,存在主从同步延迟情况),主从切换之后可能有部分数据没有复制过去可能会丢
滑动时间窗口算法
为了解决计数器算法(指在指定时间周期内累加访问次数,达到设定的阈值时,触发限流策略,比如redis的incr原子自增性,接口key过期时间使用)的临界值问题,发明了滑动窗口算法。在TCP网络请求协议中
雪花算法生成的分布式id组成分析
1、符号位,占用1位 2、时间戳,占用41位,可以支持69年的时间跨度 3、机器ID,占用10位。 4、序列号,占用12位。一毫秒可以生成4095个ID。 注意:由于存在时间戳的组合,所有雪花算法存在
漏桶限流算法
漏桶算法的原理和它的名字一样,维持一个漏斗,它有恒定的流出速度,不管水流流入的速度有多快,漏斗出水的速度始终保持不变。类似消息中间件,不管消息的生产者请求量有多大,消息的处理能力取决于消费者。 漏桶的
令牌桶限流算法
令牌桶算法,是增加一个大小固定的容器,也就是令牌桶,系统以恒定的速率向令牌桶中放入令牌,如果有客户端来请求,先需要从令牌桶中一拿个令牌,拿到令牌,才有资格访问访问系统,这时令牌中少一个令牌。当令牌桶满
微服务架构遵循的原则
1、单一职责原则: 让每个服务能独立,有界限的工作,每个服务只关注自己的业务。做到高内聚。 2、服务自治原则: 每个服务要能做到独立开发、独立测试、独立构建、独立部署、独立运行。与其他服务进行解耦。
分布式二阶段提交协议理论
二阶段提交(Two-phaseCommit)是指:在计算机网络以及数据库领域内,为了使基于分布式系统架构下的所有节点在进行事务提交时保持一致性而设计的一种算法。通常,二阶段提交也称为是一种协议。 在分
分布式三阶段提交协议理论
CanCommit阶段 协调者向参与者发送commit请求,参与者如果可以提交就返回Yes响应,否则返回No响应。 1、事务询问:协调者向参与者发送CanCommit请求。询问是否可以执行事务的提交操
二阶段提交和三阶段提交区别
1、3pc比2pc多了一个can commit 阶段,减少了不必要的资源浪费。因为2pc在第一阶段会占用资源,而3pc在这个阶段不占用资源,只是校验下SQL,如果不能执行,就直接返回,减少了资源占用
编程设计模式-工厂模式
1、简单工厂 所有的产品都共有一个工厂,如果新增产品,则需要修改代码,违反了开闭原则。是 一种编程习惯,可以借鉴这种编程思路。 2、工厂方法模式 给每个产品都提供了一个工厂,让工厂专门负责对应的产品的
编程设计模式-责任链设计模式
责任链设计模式概述: 为了避免请求发送者与多个请求处理者耦合在一起,将所有请求的处理者前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。 责任链
编程设计模式-策略模式
策略模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户。 它通过对算法信息封装,把使用算法的责任和算法的实现分隔开来,并委派给不同的对象对这些算法进行管
Java线程池中常见的阻塞队列
workQueue 当没有空闲核心线程时,新来的任务会加入到此队列排队,队列满会创建救急线程执行任务 1、ArrayBlockingQueue:基于数组结构的有界组成队列,FIFO。 2、Linked
下一页