摘要: 目录 1.Redis基础原理和知识 2.Redis持久化:RDB,AOF 3.部署redis企业级数据备份方案 4.如何通过读写分离来承载读请求QPS超过10万+(master+slave) 5 redis哨兵架构的相关基础知识的讲解 6 哨兵主备切换的数据丢失问题:异步复制、集群脑裂 7 redi 阅读全文
posted @ 2020-12-14 20:30 姚春辉 阅读(582) 评论(0) 推荐(0) 编辑
摘要: 在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流。本文结合作者的一些经验介绍限流的相关概念、算法和常规的实现方式。 缓存 缓存比较好理解,在大型高并发系统中,如果没有缓存数据库将分分钟被爆,系统也会瞬间瘫痪。使用缓存不单单能够提升系统访问速度、提高并发访问量,也是保护数据库、保护系统的有效 阅读全文
posted @ 2020-12-14 20:27 姚春辉 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 常见的限流算法大致有三种: 令牌桶算法 漏桶算法 计数器算法 网上对令牌桶又细分为固定窗口计数器限流和滑动窗口计数器限流,下面将对这几种限流方式进行简单的介绍及代码实现。注意:代码中会考虑并发线程安全问题,非分布式限流Github地址:重构后的代码 固定窗口计数器限流 固定窗口计数器限流就是在固定时 阅读全文
posted @ 2020-12-14 20:16 姚春辉 阅读(3732) 评论(0) 推荐(0) 编辑
摘要: 最近的工作中需要对我们提供的一个API进行限流来保证服务的稳定行。 参考网络,提出了两个简单的方案: 1, Ngnix限流 Nginx在架构中起到请求转发与负载均衡器的作用。外部req首先到Nginx监听的80端口,然后Nginx将req交给到监听8080端口的APP服务器处理。处理结果再经由Ngi 阅读全文
posted @ 2020-12-14 20:12 姚春辉 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 1.前序遍历 图1 对于当前节点,先输出该节点,然后输出他的左孩子,最后输出他的右孩子。以上图为例,递归的过程如下:(1):输出 1,接着左孩子;(2):输出 2,接着左孩子;(3):输出 4,左孩子为空,再接着右孩子;(4):输出 6,左孩子为空,再接着右孩子;(5):输出 7,左右孩子都为空,此 阅读全文
posted @ 2020-12-14 20:01 姚春辉 阅读(1452) 评论(0) 推荐(0) 编辑
摘要: 关于链表是否有环,其实是一系列问题,主要包括以下几个: 1.判断单链表是否有环: 使用快慢指针fast和slow,fast每次走两步,slow每次走一步,如果有环,肯定会相遇,如果没有,则指针fast遇到NULL退出。追及相遇问题。 2.求有环单链表的环长 在环上相遇后,记录第一次相遇点为Pos,之 阅读全文
posted @ 2020-12-13 15:31 姚春辉 阅读(1126) 评论(0) 推荐(1) 编辑
摘要: 总结:InnoDB中,表数据文件本身就是按B+Tree组织的一个索引结构,聚簇索引就是按照每张表的主键构造一颗B+树,同时叶子节点中存放的就是整张表的行记录数据,也将聚集索引的叶子节点称为数据页。这个特性决定了索引组织表中数据也是索引的一部分; 一般建表会用一个自增主键做聚簇索引,没有的话MySQL 阅读全文
posted @ 2020-12-12 09:45 姚春辉 阅读(475) 评论(0) 推荐(0) 编辑
摘要: 1. 什么是索引? 索引是一种数据结构,可以帮助我们快速的进行数据的查找. 2. 索引是个什么样的数据结构呢? 索引的数据结构和具体存储引擎的实现有关, 在MySQL中使用较多的索引有Hash索引,B+树索引等,而我们经常使用的InnoDB存储引擎的默认索引实现为:B+树索引. 3. Hash索引和 阅读全文
posted @ 2020-12-12 09:34 姚春辉 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 一方面,我们可以将异常分为运行时异常(RuntimeException)和非运行时异常(Exception中除了RuntimeException及其子类以外的)。另一方面,我们可以将异常分为检查异常(checked exceptions)和非检查异常(unchecked exceptions)。 检 阅读全文
posted @ 2020-12-02 09:41 姚春辉 阅读(1110) 评论(0) 推荐(0) 编辑
摘要: 用注解来简化xml配置的时候,@Param注解的作用是给参数命名,参数命名后就能根据名字得到参数值,正确的将参数传入sql语句中 我们先来看Mapper接口中的@Select方法 package Mapper; @Mapper public interface Mapper { @Select("s 阅读全文
posted @ 2020-12-02 09:25 姚春辉 阅读(1192) 评论(0) 推荐(0) 编辑