redis高级数据类型详解
高级数据类型和五种基本数据类型不同,并非新的数据结构。高级数据类型往往是用来解决一些业务场景。 [#](#一-bitmaps) (一)BitMaps {#一-bitmaps} --------------------------------------- ### [#](#_1-1-bitmaps概述) (1.1) BitMaps概述 {#_1-1-bitmaps概述} ...
高级数据类型和五种基本数据类型不同,并非新的数据结构。高级数据类型往往是用来解决一些业务场景。 [#](#一-bitmaps) (一)BitMaps {#一-bitmaps} --------------------------------------- ### [#](#_1-1-bitmaps概述) (1.1) BitMaps概述 {#_1-1-bitmaps概述} ...
[#](#一-概述) (一)概述 {#一-概述} ------------------------ MySQL中存在着以下几种日志:重写日志(redo log)、回滚日志(undo log)、二进制日志(bin log)、错误日志(error log)、慢查询日志(slow query log)、一般查询日志(general log)。 MySQL中的数据变化会体现在上面这...
[#](#一-关于索引) (一)关于索引 {#一-关于索引} ------------------------------ 索引是帮助Mysql更加高效获取数据的一种数据结构,索引的使用很简单,但是如果不能理解索引底层的数据结构的话,就谈不上去优化索引了。 [#](#二-b-树) (二)B+树 {#二-b-树} --------------------------- My...
[#](#一-概述) (一)概述 {#一-概述} ------------------------ 我们把那些可能会被多个线程同时操作的资源称为临界资源,加锁的目的就是让这些临界资源在同一时刻只能有一个线程可以访问。这是当时在讲synchronized锁时提出的锁的概念。 数据库作为用户共享的一个资源,如何保证数据并发访问一致性也是所有数据库必须解决的问题,如何加锁是数据库...
在正式介绍Mysql调优之前,先补充mysql的两种引擎 mysql逻辑分层 InnoDB:事务优先(适合高并发操作,行锁) MyISAM:性能优先(表锁) 查看使用的引擎: show variables like "%storage_engine%"; 1 使用哪个引擎在创建表时通过Engine=InnoDB创建 [#](#...
prometheus之通过mysql exporter+node exporter监控mysql,并使用grafana进行图表展示 [#](#前置准备) 前置准备 {#前置准备} ----------------------- #### [#](#四种安装包地址) 四种安装包地址: {#四种安装包地址} mysqld_exporter:[https://github.co...
[#](#一-主从复制介绍) (一)主从复制介绍 {#一-主从复制介绍} ------------------------------------ 前面所讲的关于redis的操作都属于单机操作,单机操作虽然操作简单,但是处理能力有限,无法高可用。所谓高可用性,就是指当一台服务器宕机的时候,有备用的服务器能顶替上,在单机操作上这是无法实现的,因此就出现了主从复制。 我们把一台服...
[#](#一-哨兵概述) (一)哨兵概述 {#一-哨兵概述} ------------------------------ 前面我们讲了redis的主从复制,为了实现高可用,会选择一台服务器作为master,多台服务器作为slave。现在有这样一种情况,master宕机了,这时系统会选择一台slave作为master,然后把宕机的master下线,再通知所有slave新的ma...
[#](#一-概述) (一) 概述 {#一-概述} ------------------------- 在前面的博客系列中,我们把redis的基础语法配置等比较详细的讲了一遍,但如果要用现在更多的是集成到spring系列的框架之中,今天我们就来讲解springboot集成redis的方法以及一些注意点。 [#](#二-项目依赖) (二) 项目依赖 {#二-项目依赖} ---...
[#](#一-缓存穿透-查不到) (一)缓存穿透(查不到) {#一-缓存穿透-查不到} ------------------------------------------- ### [#](#_1-1-概念) 1.1 概念 {#_1-1-概念} 当用户想要查询一个数据的时候,发现redis内存数据库中没有,于是向持久化数据库查询发现也没有,相当于请求绕过缓存直接打到持久层...