上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 41 下一页
摘要: MySQL 基础架构 这道题应该从 MySQL 架构来理解,我们可以把 MySQL 拆解成几个零件,如下图所示 大致上来说,MySQL 可以分为 Server层和 存储引擎层。 Server 层包括连接器、查询缓存、分析器、优化器、执行器,包括大多数 MySQL 中的核心功能,所有跨存储引擎的功能也 阅读全文
posted @ 2020-05-03 23:43 泥土里的绽放 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 关于索引:由于索引需要额外的维护成本,因为索引文件是单独存在的文件,所以当我们对数据的增加,修改,删除,都会产生额外的对索引文件的操作,这些操作需要消耗额外的IO,会降低增/改/删的执行效率。所以,在我们删除数据库百万级别数据的时候,查询MySQL官方手册得知删除数据的速度和创建的索引数量是成正比的 阅读全文
posted @ 2020-05-03 23:24 泥土里的绽放 阅读(2166) 评论(0) 推荐(0) 编辑
摘要: 在MySQL中,索引属于存储引擎级别的概念,不同存储引擎对索引的实现方式是不同的,本文主要讨论MyISAM和InnoDB两个存储引擎的索引实现方式。 MyISAM索引实现 MyISAM引擎使用B+Tree作为索引结构。 MyISAM会按照数据插入的顺序分配行号,从0开始,然后按照数据插入的顺序存储在 阅读全文
posted @ 2020-05-03 23:17 泥土里的绽放 阅读(758) 评论(0) 推荐(0) 编辑
摘要: 今天就给大家聊一个有意思的话题:每秒上千订单场景下,如何对分布式锁的并发能力进行优化? 背景引入 首先,我们一起来看看这个问题的背景? 前段时间有个朋友在外面面试,然后有一天找我聊说:有一个国内不错的电商公司,面试官给他出了一个场景题: 假如下单时,用分布式锁来防止库存超卖,但是是每秒上千订单的高并 阅读全文
posted @ 2020-05-03 23:15 泥土里的绽放 阅读(645) 评论(0) 推荐(0) 编辑
摘要: Mysql innoDB日志 Mysql innoDB有两个日志模块:redolog 和 binlog 咱们先看一下redolog。 redolog中文来讲就是重做日志,它有什么用呢?如果每次你的更新或者插入都写入磁盘的话那这个IO成本就比较大了,所以InnoDB就把记录先记录在redolog中,并 阅读全文
posted @ 2020-05-03 16:52 泥土里的绽放 阅读(439) 评论(0) 推荐(0) 编辑
摘要: 事前准备 为了故事的顺利发展,我们需要创建一个表: CREATE TABLE t ( id INT PRIMARY KEY, c VARCHAR(100) ) Engine=InnoDB CHARSET=utf8; 然后向这个表里插入一条数据: INSERT INTO t VALUES(1, '刘备 阅读全文
posted @ 2020-05-03 16:25 泥土里的绽放 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 前言 在分布式系统中,缓存和数据库同时存在时,如果有写操作的时候,先操作数据库还是先操作缓存呢? 先思考一下,可能会存在哪些问题,再往下看。下面我分几种方案阐述。 缓存维护方案一 假设有一写(线程A)一读(线程B)操作,先操作缓存,在操作数据库,如下流程图所示 1)线程A发起一个写操作,第一步del 阅读全文
posted @ 2020-05-03 14:56 泥土里的绽放 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 面试开始 一个大腹便便,穿着格子衬衣的中年男子,拿着一个满是划痕的mac向你走来,看着快秃顶的头发,心想着肯定是尼玛顶级架构师吧!但是我们腹有诗书气自华,虚都不虚。 小伙子您好,看你简历上写了你项目里面用到了Redis,你们为啥用Redis? 心里忍不住暗骂,这叫啥问题,大家不都是用的这个嘛,但是你 阅读全文
posted @ 2020-05-02 17:57 泥土里的绽放 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 背景 由于对redis缓存中数据有批量操作,例如预热缓存数据,或者在列表页批量去获取缓存数据,在使用了multi批量提交事务后,发现redis压力高居不下,而使用了pipeline之后压力回落了平常,也因为这个案例,特在此写个分析与笔记。 multi 简介 标记一个事务块的开始。 事务块内的多条命令 阅读全文
posted @ 2020-05-02 17:20 泥土里的绽放 阅读(1375) 评论(0) 推荐(1) 编辑
摘要: 摘自:http://imhuchao.com/1271.html 引言 在介绍布隆过滤器之前我们首先引入几个场景。 场景一 在一个高并发的计数系统中,如果一个key没有计数,此时我们应该返回0,但是访问的key不存在,相当于每次访问缓存都不起作用了。那么如何避免频繁访问数量为0的key而导致的缓存被 阅读全文
posted @ 2020-05-01 11:39 泥土里的绽放 阅读(2049) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 41 下一页