
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
一、分库分表实例1. 依赖jar包注意:依赖druid,需要使用第三方连接池:com.alibaba.druid.pool.DruidDataSource<dependency><groupId>org.apache.shardingsphere</groupId><artifactId>sharding-jdbc-spring-boot-start
目录一、Hystrix执行过程二、Hystrix熔断机制1. 熔断原理2.HystrixCircuitBreakerImpl源码解析3. 熔断器开关状态4. 采样统计三、配置参数四、参考资料一、Hystrix执行过程step1:每次调用创建一个新的HystrixCommand,把依赖调用封装在run()方法中。step2:执行execute()/queue做同步或异步调用。step3:判断熔断器(
一、GuavaGuava被Google的Java项目广泛依赖的核心库,是个工具包,集成集合、缓存、并发等相关工具。作为缓存,是全内存本地缓存且线程安全;作为并发,提供的RateLimiter限流是通过令牌桶算法实现限流。本章使用限流工具类RateLimiter提供全局限流或平滑某接口的请求数。二、RateLimiter1. 测试SmoothBurstypackage com.common.inst
目录一、ShardingSphere介绍1.ShardingSphere-JDBC2.ShardingSphere-Proxy3.ShardingSphere-Sidecar4. 三种区别5. 混合架构JDBC +Proxy二、数据库拆分1. 垂直分库2. 水平分库3. 垂直分表4. 水平分表5. 总结三、ShardingSphere分库分表相关概念1. 逻辑表2. 真实表3. 数据节点4. 绑
目录一、读写分离配置二、验证读写分离1. 写验证2. 读验证三、强制读取主库四、参考资料一、读写分离配置注意是分库分表 + 读写分离的配置。ShardingSphere的版本3.x、4.0.1、4.1.1、5.0.0-alpha都存在很大的配置差异,这里使用4.1.1的配置。其中多从库负载均衡算法类型,可选值:ROUND_ROBIN(轮询)、RANDOM(随机)、WEIGHT(权重)。spring
一、分布式事务ShardingSphere提供三种事务类型:LOCAL(默认)、XA 和 BASE。见枚举类org.apache.shardingsphere.transaction.core.TransactionType。1. LOCAL事务支持:单库事务(可分表);因逻辑异常导致的跨库事务(如:同一事务中,跨两个库更新。更新完毕后,抛出空指针,则两个库都能够回滚)不支持:因网络、硬件异常导致
目录一、重入锁ReentrantLock1. 实现锁重进入2. 获取公平锁与非公平锁的区别二、读写锁ReentrantReadWriteLock1.ReentrantReadWriteLock的API2. 读写状态设计3. 写锁的获取与释放4.读锁的获取与释放5. 写锁降级三、参考资料一、重入锁ReentrantLock重入锁指线程获得锁后能够再次获取该锁而线程不被阻塞。synchronized关
目录一、为什么用ConcurrentHashMap?二、ConcurrentHashMap结构及初始化1.ConcurrentHashMap结构2. 初始化三、ConcurrentHashMap的API1. put()源码2. get()源码四、参考资料一、为什么用ConcurrentHashMap?ConcurrentHashMap线程安全且高效的操作,如下图对比所示。而HashMap非线程安全
一、常见限流场景缓存、降级、限流被称为高并发、分布式系统中经常提及的话题。这里讨论网关限流。1.1 限流对象a):请求频率限流(Request rate limiting):限制某个接口的一分钟内的请求数b):并发量限流(Concurrent requests limiting):限制某个服务的处理请求数c):传输速率限流(Transmission rate limiting):限制下载文件速率d







