![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
后端知识点合集
文章平均质量分 79
QQsilhonette
这个作者很懒,什么都没留下…
展开
-
流量控制知识点
总体说明:Hystrix:关注点在于隔离和熔断为主的容错机制,超时或熔断可以快速失败,并提供fallback机制;Sentinel:多样化的流量控制、熔断降级、系统负载保护、实时监控和控制台。共同特性1)资源模型和执行模型上的对比:Hystrix强依赖隔离规则,因为Hystrix在执行时会解析Command的隔离规则来创建RxJava Scheduler并在其上调度执行;Sentinel只需要考虑这个代码是否需要保护,规则配置可以动态调整。2)隔离设计上的对比:Hystr..原创 2021-03-16 17:47:57 · 168 阅读 · 0 评论 -
分库分表知识点
1、什么要分库分表?一般一个表的数据最好控制在200万以内,一个库最多支撑并发2000,并发最好保持在1000。# 分库分表前 分库分表后 并发支撑情况 MySQL 单机部署,扛不住高并发 MySQL从单机到多机,能承受的并发增加了多倍 磁盘使用情况 MySQL 单机磁盘容量几乎撑满 拆分为多个库,数据库服务器磁盘使用率大大降低 SQL 执行性能 单表数据量太大,SQL 越跑越慢 单表数据量减少,SQL 执行效率明显提升 2、不同.原创 2020-09-16 17:24:36 · 196 阅读 · 0 评论 -
分布式锁知识点
1、基于redis的最简单的分布式锁// 获取锁// NX是指如果key不存在就成功,key存在返回false,PX可以指定过期时间SET anyLock unique_value NX PX 30000// 释放锁:通过执行一段lua脚本// 释放锁涉及到两条指令,这两条指令不是原子性的// 需要用到redis的lua脚本支持特性,redis执行lua脚本是原子性的if redis.call("get",KEYS[1])== ARGV[1] then return red原创 2020-09-09 16:15:06 · 209 阅读 · 0 评论 -
消息队列知识点
1、为什么要用消息队列好处:解耦、异步、削峰;缺点:系统可用性降低、系统复杂度高、一致性问题。2、Kafka、RabbitMQ、RocketMQ 有什么优缺点?特性 RabbitMQ RocketMQ Kafka 单机吞吐量 万级 10 万级,支撑高吞吐 10 万级,高吞吐,一般配合大数据类的系统来进行实时数据计算、日志采集等场景 topic 数量对吞吐量的影响 topic 可以达到几百/几千的级别,吞吐量会有较小幅度的下降,这是 .原创 2020-09-15 16:40:39 · 125 阅读 · 0 评论 -
分布式事务知识点
1、分布式事务的实现XA方案 TCC方案(部分严格一致性场景) 本地消息表 可靠消息最终一致性方案(推荐) 最大努力通知方案2、两阶段提交方案/XA方案XA方案即两阶段提交,有一个事务管理器的概念,负责协调多个数据库的事务。第一阶段:事务协调器要求每个设计到事物的数据库预提交此操作,并反映是否可以提交;第二阶段:事务协调器要求每个数据库提交数据。比较适合单个应用,由于严重依赖于数据库层面来搞定复杂的事务,效率很低,不适合高并发的场景。这个方案很少使用,一般微服务内部不.原创 2020-09-09 14:54:27 · 136 阅读 · 0 评论