- 博客(5)
- 收藏
- 关注
原创 分布式限流算法
一:限流的作用有高并发的系统中,由于API接口无法控制调用发的行为,因此如果遇到瞬时请求数量递增,就会导致接口占用过多的服务器子u,导致响应速度降低或者超时,甚至可能英雌导致服务器宕机,尤其是数据库服务器。所以就有限流的思想,限制客户端对服务器端端的请求限制,如果在单位时间内超过该请求限制,就会执行快速失败或者服务降级。所以限流主要应对一下情况:热点业务带来的突发情况调用方bug导致的突发请求恶意攻击请求二:主要的限流算法核心思想:限制每秒的事务数固定窗口计数器核心思路:
2020-08-03 09:48:46
212
原创 Mysql锁
一:Mysql支持的锁类型和特点?1:表级锁:开销小,粒度大,加锁快,并发度低,发生锁冲突的概率最高2:行级锁:开销大,粒度小,加锁慢,并发度大,发生锁冲突的概率最低3:页面锁,开销和加锁时间介于表级锁和行级锁之间,会出现死锁。二:不同存储引擎锁支持的锁类型。主要分析inndb和myisam存储引擎。myisam使用的是表级锁,inndb支持的是行级锁好表级锁。2.1:myisam表锁:myisam也有两种锁模式:表共享读锁和表独占写锁。表共享读锁:不会阻塞其他用户对同一张表的读请求。表
2020-07-31 11:20:25
114
原创 分布式锁解决方案
一:为什么需要分布式锁?在传统的单机应用中,我们可以使用jvm层面的api实现锁来保证互斥控制,但是在分布式系统中,这种jvm域的锁就无法来实现对共享资源的控制了,这就需要使用分布式锁来结局分布式事务的问题了。二:分布式锁所需要拥有的优点:1:能够高性能的释放和获得锁2:不会发生死锁3:需要实现可重入锁4:具备锁失效机制,不会发生死锁5:具备阻塞锁特性,没有获得将继续等待获取锁6:具备费阻塞锁特性,没有获得锁将直接返回获取锁失败。三:分布式锁能解决什么问题?1:分布式session一致性
2020-07-30 18:12:23
669
原创 初识Zookeeper
什么是zookeeperzookeeper主要用于服务分布式系统,可以用于统一命名管理,统一配置管理,分布式锁,集群管理。一:统一配置管理,在项目配置中,如果有多个配置存在多个公共配置common.yml,并作为其他配置的父节点,当common配置发生改变,其他附属于common.yml的配置文件也需要响应该变更。二:统一命名服务,一个域名下配置了多台服务器,别人访问我的服务器可以通过配置的域名去访问而不是通过ip去定位服务器。三:分布式锁分布式锁的具体流程:1:客户端A连接zookeepe..
2020-07-30 16:01:17
127
原创 spring
@spring一:Spring的优点1:低入侵式,对代码的污染极低2:解耦,spring的DI机制将对象之间的依赖交给框架处理,减少组件的耦合3:复用:spring的AOP技术,将一个通用任务集中管理,从而提供更好的复用4:spring对主流的框架都能友好的支持二:BeanFactory和ApplicationContext的区别共同点:这两个都是spring的核心容器,ApplicationContext是BeanFactory的子接口(1):BeanFactory是spring最底层的接
2020-07-30 14:17:19
92
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人